約 5,306,644 件
https://w.atwiki.jp/usb_audio/pages/37.html
原文:Audio Device Document 1.0(PDF) USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 41 The bNrInPins field contains the number of Input Pins (p) of the Mixer Unit. This evidently equals the number of audio channel clusters that enter the Mixer Unit. The connectivity of the Input Pins is described via the baSourceID() array, containing p elements. The index i into the array is one-based and directly related to the Input Pin numbers. BaSourceID(i) contains the ID of the Unit or Terminal to which Input Pin i is connected. The cluster descriptors, describing the logical channels entering the Mixer Unit are not repeated here. It is up to the Host software to trace the connections ‘upstream’ to locate the cluster descriptors pertaining to the audio channel clusters. As mentioned before, every input channel can virtually be mixed into all of the output channels. If n is thetotal number of logical input channels, contained in all the audio channel clusters that are entering the Mixer Unit ここに式 and m is the number of logical output channels, then there are n x m mixing Controls in the Mixer Unit, some of which may not be programmable. cite(Note) Both n and m must be limited to 254. Because a Mixer Unit can redefine the spatial locations of the logical output channels, contained in its output cluster, there is a need for a Mixer output cluster descriptor. The bNrChannels, wChannelConfig and iChannelNames characterize the cluster that leaves the Mixer Unit over the single Output Pin (‘downstream’ connection). For a detailed description of the cluster descriptor, see Section 3.7.2.3, “Audio Channel Cluster Format.” The Mixer Unit Descriptor reports which Controls are programmable in the bmControls bitmap field. This bitmap must be interpreted as a two-dimensional bit array that has a row for each logical input channel and a column for each logical output channel. If a bit at position [u, v] is set, this means that the Mixer Unit contains a programmable mixing Control that connects input channel u to output channel v. If bit [u, v] is clear, this indicates that the connection between input channel u and output channel v is non-programmable. Its fixed value can be retrieved through the appropriate request. The valid range for u is from one to n. The valid range for v is from one to m. The bmControls field stores the bit array row after row where the MSb of the first byte corresponds to the connection between input channel 1 and output channel 1. If (n x m) is not an integer multiple of 8, the bit array is padded with zeros until an integer number of bytes is occupied. The number of bytes used to store the bit array, N, can be calculated as follows IF ((n x m) MOD 8) 0 THEN N = ((n x m) DIV 8) + 1 ELSE N = ((n x m) DIV 8) An index to a string descriptor is provided to further describe the Mixer Unit. The following table details the structure of the Mixer Unit descriptor. Table 4-5 Mixer Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 10+p+N 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant MIXER_UNIT descriptor subtype. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 42 Offset Field Size Value Description 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 bNrInPins 1 Number Number of Input Pins of this Unit p 5 baSourceID(1) 1 Number ID of the Unit or Terminal to which the first Input Pin of this Mixer Unit is connected. … … … … … 5+(p-1) baSourceID (p) 1 Number ID of the Unit or Terminal to which the last Input Pin of this Mixer Unit is connected. 5+p bNrChannels 1 Number Number of logical output channels in the Mixer’s output audio channel cluster. 6+p wChannelConfig 2 Bitmap Describes the spatial location of the logical channels. 8+p iChannelNames 1 Index Index of a string descriptor, describing the name of the first logical channel. 9+p bmControls N Number Bit map indicating which mixing Controls are programmable. 9+p+N iMixer 1 Index Index of a string descriptor, describing the Mixer Unit. 4.3.2.4 Selector Unit Descriptor The Selector Unit is uniquely identified by the value in the bUnitID field of the Selector Unit descriptor (SUD). No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Selector Unit. The bNrInPins field contains the number of Input Pins (p) of the Selector Unit. The connectivity of the Input Pins is described via the baSourceID() array that contains p elements. The index i into the array is one-based and directly related to the Input Pin numbers. BaSourceID(i) contains the ID of the Unit or Terminal to which Input Pin i is connected. The cluster descriptors, describing the logical channels that enter the Selector Unit are not repeated here. In order for a Selector Unit to be legally connected, all of the audio channel clusters that enter the Selector Unit must have the same number of channels. However, the spatial locations of these channels may vary from cluster to cluster. Therefore, the Host software should trace all Input Pins to find their ‘upstream’ connection to locate the cluster descriptors for all the Input Pins that enter the Selector Unit. This further implies that the cluster descriptor, associated with the Output Pin of the Selector Unit can change dynamically, depending on the currently selected position of the Selector Unit. An index to a string descriptor is provided to further describe the Selector Unit. The following table details the structure of the Selector Unit descriptor. USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 43 Table 4-6 Selector Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 6+p 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant SELECTOR_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 bNrInPins 1 Number Number of Input Pins of this Unit p 5 baSourceID(1) 1 Number ID of the Unit or Terminal to which the first Input Pin of this Selector Unit is connected. … … … … … 5+(p-1) baSourceID (p) 1 Number ID of the Unit or Terminal to which the last Input Pin of this Selector Unit is connected. 5+p iSelector 1 Index Index of a string descriptor, describing the Selector Unit. 4.3.2.5 Feature Unit Descriptor The Feature Unit is uniquely identified by the value in the bUnitID field of the Feature Unit descriptor (FUD). No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Feature Unit. The bSourceID field is used to describe the connectivity for this Feature Unit. It contains the ID of the Unit or Terminal to which this Feature Unit is connected via its Input Pin. The cluster descriptor, describing the logical channels entering the Feature Unit is not repeated here. It is up to the Host software to trace the connection ‘upstream’ to locate the cluster descriptor pertaining to this audio channel cluster. The bmaControls() array is an array of bit-maps, each indicating the availability of certain audio Controls for a specific logical channel or for the master channel 0. For future expandability, the number of bytes occupied by each element (n) of the bmaControls() array is indicated in the bControlSize field. The number of logical channels in the cluster is denoted by ch. An index to a string descriptor is provided to further describe the Feature Unit. The layout of the Feature Unit descriptor is detailed in the following table. Table 4-7 Feature Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 7+(ch+1)*n USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 44 Offset Field Size Value Description 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant FEATURE_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 bSourceID 1 Constant ID of the Unit or Terminal to which this Feature Unit is connected. 5 bControlSize 1 Number Size in bytes of an element of the bmaControls() array n 6 bmaControls(0) n Bitmap A bit set to 1 indicates that the mentioned Control is supported for master channel 0 D0 MuteD1 VolumeD2 BassD3 MidD4 TrebleD5 Graphic EqualizerD6 Automatic GainD7 DelayD8 Bass BoostD9 LoudnessD10..(n*8-1) Reserved 6+n bmaControls(1) n Bitmap A bit set to 1 indicates that the mentioned Control is supported for logical channel 1. … … … … … 6+(ch*n) bmaControls(ch) n Bitmap A bit set to 1 indicates that the mentioned Control is supported for logical channel ch. 6+(ch+1)*n iFeature 1 Index Index of a string descriptor, describing this Feature Unit. 4.3.2.6 Processing Unit Descriptor The Processing Unit is uniquely identified by the value in the bUnitID field of the Processing Unit descriptor (PUD). No other Unit or Terminal within the same alternate setting of the AudioControl interface may have the same ID. This value must be passed in the UnitID field of each request that is directed to the Processing Unit. The wProcessType field contains a value that fully identifies the Processing Unit. For a list of all supported Processing Unit Types, see Section A.7, “Processing Unit Process Types.” The bNrInPins field contains the number of Input Pins (p) of the Processing Unit. The connectivity of the Input Pins is described via the baSourceID() array that contains p elements. The index i into the array is one-based and directly related to the Input Pin numbers. BaSourceID(i) contains the ID of the Unit or USB Device Class Definition for Audio Devices Release 1.0 March 18, 1998 45 Terminal to which Input Pin i is connected. The cluster descriptors, describing the logical channels entering the Processing Unit are not repeated here. It is up to the Host software to trace the connections ‘upstream’ to locate the cluster descriptors pertaining to the audio channel clusters. Because a Processing Unit can freely redefine the spatial locations of the logical output channels, contained in its output cluster, there is a need for an output cluster descriptor. The bNrChannels, wChannelConfig, and iChannelNames fields characterize the cluster that leaves the Processing Unit over the single Output Pin (‘downstream’ connection). For a detailed description of the cluster descriptor, see Section 3.7.2.3, “Audio Channel Cluster Format.” The bmControls field is a bitmap, indicating the availability of certain audio Controls in the Processing Unit. For future expandability, the number of bytes occupied by the bmControls field is indicated in the bControlSize field. In general, all Controls are optional. However, some Processing Types may define certain Controls as mandatory. In such a case, the appropriate bit in the bmControls field must be set to one. The meaning of the bits in the bmControls field is qualified by the wProcessType field. However, bit D0 always represents the Enable Processing Control for all Processing Unit Types. The Enable Processing Control is used to bypass the entire functionality of the Processing Unit. Default behavior is assumed when set to off. In case of a single Input Pin, logical channels entering the Unit are passed unaltered for those channels that are also present in the output cluster. Logical channels not available in the output cluster are absorbed by the Processing Unit. Logical channels present in the output cluster but unavailable in the input cluster are muted. In case of multiple Input Pins, corresponding logical input channels are equally mixed together before being passed to the output. If the Enable Processing Control is present in a Processing Unit, bit D0 must be set to one. Otherwise, it is set to zero, indicating that the Processing Unit cannot be bypassed. An index to a string descriptor is provided to further describe the Processing Unit. The previous fields are common to all Processing Units. However, depending on the value in the wProcessType field, a process-specific part is added to the descriptor. The following paragraphs describe these process-specific parts. The following table outlines the common part of the Processing Unit descriptor. Table 4-8 Common Part of the Processing Unit Descriptor Offset Field Size Value Description 0 bLength 1 Number Size of this descriptor, in bytes 13+p+n+x 1 bDescriptorType 1 Constant CS_INTERFACE descriptor type. 2 bDescriptorSubtype 1 Constant PROCESSING_UNIT descriptor subtype. 3 bUnitID 1 Number Constant uniquely identifying the Unit within the audio function. This value is used in all requests to address this Unit. 4 wProcessType 2 Constant Constant identifying the type of processing this Unit is performing. 6 bNrInPins 1 Number Number of Input Pins of this Unit p 1 - 6 - 11 - 16 - 21 - 26 - 31 - 36 - 41 - 46 - 51 - 56 - 61 - 66 - 71 - 76 - 81 - 86 - 91 - 96 - 101 - 106 - 111 - 116 - 121 - 126 ここを編集
https://w.atwiki.jp/blrjpwiki/pages/85.html
誰か手が空いてたら訳して整頓しといて(丸投げ) +2016-3-28 HOTFIX 2.17 Bug Fixes – Fix crashes related to Http requests – Improve trophy unlock handling for PS4 – Fix not being able to assign the same taunt to more than one slot – Improved PSN handling for PS4 – Fixed framerate drops in some cases – Fixed missing suicide notifications – Fixed revival injector not showing recharge progress – Fixed R3 opening up the player inspect in the social menu – Fixed cross-game invites – Fixed issues with Rivals / Warlords and team switching – Fixed Hardsuit Battle Mode – Fixed dead pawn cleanup issues in Onslaught – Fixed issues with host migration and spectators – Fixed Ready Up buttons not working as designed – Fixed level restrictions in some cases – Fixed unstable ping reporting – Fixed spectate abuse, deaths now remain when you switch to spectator – Fixed dropped pickups being overly difficult to… pick up – Fixed issues with matchmaking weighting – Fixed issues causing player invisibility – Fixed issues causing player cameras to do strange things on revives in some cases – Fixed issues with empty searches – Fixed a small memory leak with chat restricted players – Fixed issues with the backup host selection PC NA BEAQ-FQIU-DDMD-YMPB PS4 QYHD-OPTB-DOIA-YCOI PC EU XSCG-FUTI-DCBR-YGIM +2016/3/8 Blacklight March update Updated 2016-03-08 2 34 24 PM Important to Note – If you are experiencing problems with the older Weapon Skins, please unequip and re-equip them to fix it. – All Weapon Tags with effects have been updated and replaced with Trophies. If you had a Weapon Tag with an effect it has been changed to a Trophy. This is a game design change that we thought long and hard about. It ended up making more sense to have effects on the character to be associated with Trophies instead of Weapon Tags. New Features – New Weapon Skins! – New Helmets! – New Holiday playlists with special rewards! – New death animation system! – Added new emotes! – Added new holiday content! Game Changes – Customization now sorts objects into categories such as Owned, Featured, Purchaseable and Locked – New background for UI elements – Party members will always be allowed to join your game if there is space available – Ping calculation has been slightly improved – Improved ping cache generation – Games can be spectated even if full as long as we have space open for spectators – Onslaught games can be rejoined if you leave them, you’ll respawn next wave – New startup sequence flow – Weapon Pickups no longer disappear randomly. Dropped weapons will now last full 30 seconds Bug Fixes – Finally fixed the heal injector – Added mitigations regarding grenade suicide – Zoom Blur can be turned off in settings – Zoom Blur now turns off properly when dying or when a round ends – Fixed friends being able to join your private matches if they aren’t in a party with you – Fixed trophies not unlocking under certain conditions – Fixed bugs with EMP grenades – Fixed crashing while searching for/joining games – Fixed “you need a password” error message appearing in matchmaking – Fixed broken trophy unlock cases – Fixed Convoy on KOTH causing crashes – Fixed friend sorting with parties – Fixed players showing up as dead if you joined SnD in progress – Fixed game is full message appearing incorrectly – Fixed softlock on login – Fixed a case of the void world occuring – Fixed revive UI in round-based game modes – Fixed private match timers always becoming 1 minute after the first match – Fixed map names not appearing correctly in the custom playlist selector – Fixed UI Scrollers appearing in chance packs when they shouldn’t – Fixed the description for the Mechanized Soldier trophy – Fixed a level glitch in Deadlock – Fixed a level glitch in Decay – Fixed a level glitch in Rig – Fixed a level glitch in SeaPort – Fixed a level glitch in Trench regarding hardsuit spawns +2016/2/2 Blacklight Feburuary Update New Features – Added Gun sway in first person when rotating – Added a new Training Level – Added a presige system once you hit max level – Added some lovely new items – Added a new and improved AAR Game Changes – Vortex color grading has been improved – BLP and SMG balance has been adjusted – CTF spawns have been adjusted in all maps – SND bomb placements have been adjusted in several maps – The Compound Bow now supports weapon tags – Ammo counter scopes now show ammo remaining properly for single-shot weapons – Level curve has been adjusted significantly – Rain in Evac has lessened – Rejoining a server should preserve your stats Bug Fixes – Fixed many sight alignment issues – Fixed an issue with KOTH beacon movement – Fixed headshot mutator conflict for private matches – Fixed bot and turret names in non-english languages – Fixed gear not showing camo colors in the armory – Fixed several scoreboard bugs – Fixed several elevator exploits – Fixed issues with floating mines – Fixed Spoon texture offset – Fixed Spoon skin tiling on variant spork – Fixed private matches sometimes host migrating – Fixed effects not showing in taunt menu – Fixed purchase dialog for weapon skins – Fixed weapon tags not swapping when picking up weapons – Fixed incorrect max ammo on picked up weapons – Fixed sensitivity sliders not saving correctly – Fixed collision issues in several levels – Fixed a rare crash at the end of the round – Fixed issues with expired trial items – Fixed a few issues with parties – Fixed lighting on a few minor items – Fixed ZCoin buttons in the Marketplace – Fixed invalid map/mode combinations in playlists – Fixed some issues with matchmaking +2015/12/18 Blacklight Holiday patch New Features – Prime is no more, long live the GP Duplicator! We will have a blog post up with more information when patch goes live. – Added new items for all to enjoy – A multi-playlist selector has been added to the playlist menus, you can now queue for multiple game types at once! – Level-restricted playlists have been added for new players Game Changes – Level restrictions have been removed from all items – Most functional items can now be purchased permanently with GP – GP prices have been adjusted to varying degrees – Rig has been optimized, and should run much better – Reduced several hitches in the startup sequence, main menus, and social tabs – BLP and BSMG have been tuned – You can no longer start practice while searching for a match – Ping bars now also show numbers in addition to tiers – Update to µ setting on Spoon due to AOE falloff cascading too quickly – Improved matchmaking performance and functionality – Completed missions will now write to your live feed – GP Bonuses (if applicable) will now be individually called out in the AAR – Pass done on weapon balancing – Additional work on servers for stability and future services Bug Fixes – Fixed missing scopes – Fixed being unable to reload in certain situations – Fixed a level glitch in Vortex – Fixed a level glitch in Seaport – Fixed a level glitch in Rig – Fixed a level glitch in Crashsite – Fixed issues with spectator joining – Fixed an issue where ammo / health counters are not updated in the HUD – Fixed some bugs with profile stats – Fixed several rare crash bugs – Fixed issues with the holo decoy and hero skins – Fixed issues with certain taunt and gender combinations – Fixed an issue with burst fire weapon animations getting stuck on in certain situations – Fixed issues with private matches – Fixed issues with friends lists – Fixed emblem color mismatch between character and UI – Fixed reload / taunt bug – Fixed a movement stutter upon initial movement – Fixed an issue where the kill cam would freeze at the wrong time – Fixed Kill Confirmed tags sometimes not dropping – Fixed alignment on sights for shotgun barrels – Fixed alignment of EMI Scope on pistols – Fixed incorrect end match text in Onslaught – Fixed unreliable headshot stat tracking +2015/11/18 Stability Patch Blacklight stability patch [18 November 2015] RAW CHANGESLIST FIXES Fixing error in Engine.fra localization. Fixed duplicated keys and removed white space from keys Spelling pass Adding title for contest winners Reduced bloom effect on Vortex, turned down lighting on Victory screen Fixed buttons in private match being broken if entering one of the dialogs [BLR-1082] Fix for BSD-318 (Out of map bug [elevator installation – Trench]) Removing Dropzone from the game. Clamped recoil further on PS4 Fixed a decal mesh in Decay that would stop bullets Fix recursion issue in dialog buttons Slightly reduced recoil on BSMG Adding anniversary camos and corresponding UI icons Fixed out-of-world bug BLR-1108 Fixed out of world bug BLR-1107 Fixed a stuck spot on a ramp BLR-1106 Fix chat being available on console builds. Additional error catching Fix for Missions Replaced Upper Playground billboard in Evac Floored a floating depot in Seaport Merge host migration fix for missing weapons due to mutators Fixed a casting error when jumping to an object Merge HM fix for not resetting game settings to defaults on host migration Merging crash fix for landing page market widget featured items Merging ui fix for not showing error when trying to re-purchase weapon license in landing page market widget Added 2016 and 2017 anniversary camos / preview art Adding anniversary body and weapon camos to default.ini and loc files. Enable Admin message Reduce dedicated server threads Disable physx threads Halve pool threads Disable Stats and stats threads Replaced µ setting on Spoon; damage rate variable Setting for toggle-scoreboard is added back for PS4 in Gameplay menu. Private match now says “DOM” instead of “CP” under Custom Playlist- Map Select BLR-1151 #fixed #comment Private match now says “DOM” instead of “CP” under Custom Playlist- Map Select Correcting Friendly Abbreviation from “TKoth” to “Koth” Fixed LMG and LMG-R tooltips which had inaccurate rate of fire description, BLR-1066 BLR-1069 #comment Removed right and left stick deadzone sliders from PC mode as they aren’t being used by the PC build, only in console. Fixed script error with invalid array access on PS4 build with controls page. Fixing out of world spot in Vortex. BLR-1177 Renting Incendiary / Toxic ammo with GP / ZCoin now unequips item when the rental period is over, Fix left joystick not navigating UI anymore BLR-1144 No longer allowing 32 player matches on ps4, matches are now respecting the value of MaxPlayers. Fix WeaponClass class name from ‘FoxWeapon_ThrowingKnives’ to ‘FoxWeapon_ThrowingStars’ to fix BLR-1102 Stun Shurikens labeled as Throwing Knives in first person spectate Fixed author name and removed log entry that isn’t necessary anymore. Related change to BLR-1135 Added DefaultAmmo.ini to address newly added FoxDataProvider_Ammo type related to BLR-1135 Making changes to disconnection cases to try to lessen the amount of random disconnects happening during gameplay Now have a “safe” connection change delegate where, when fired, will only disconnect if not in a game Fixed inability to login when in non-english with GTS files hosted Fixing the scrolling server browser missing information bug as well as the invalid server name issue. BLR-1180 fixed the interior elevator in Trench so players dont get stuck on closing doors and moving floors Texture format corruption on SmallDepthZ for PS4 fix Fix healing a player who’s capped at a reduced health from toxic damage rewarding CP. Fixing up taunts BLR-1018 Sensitivity and deadzone sliders have decimal precision. Users can now set their Mouse Tight Aim Sensitivty to 11.5 instead of just 10 or 11, similar applies to other sliders in the control’s page. BLR-1002. Fix rare light shaft corruption on PS4. Fixed by clamping sample values in the light shaft radial blur shader Fix news widget trying to activate when it isn’t actually visible on any menu. BLR-1193 Fix profile button prompt in clan list A host now gets an extended dialog message when trying to leave a match since it will cause a host migration A host can no longer leave a match when it is almost over Thresholds are ini configurable and this functionality can be disabled with GTS Fix broken projectile weapons PS4 HOSTING REFACTOR PASS 1 Wifi users will be forbidden from hosting via Quick Match Wifi users will be marked as not viable hosts early on in the hosting qualification determination sequence. This only affects Quick Join/Match, Private Matches are unaffected entirely. Can be disabled via the ini flags. Added function to check if the current console is on eth or wlan. This function allows us to ping the current netadapter to figure out what process is used. It’s a part of the Online Subsystem, and is usable in C++. Only PS4 has this implemented. Added new config flags that can turn off these features as needed. bPreventWifiHosts (true) – by default starts filtering users who have wifi to not be used in host determination and will get a heavy rating against them HostSelectionWifiPenalty (60.0f) – Users who are on wifi get this penalty applied to them (higher means will be ignored for other clients) HostSelectionStrictNatPenalty (125.0f) – If a user is on a strict NAT, apply this penalty to them. – Removed depricated host determination/migration code Lots of script code was deleted due to deprication. It is not used currently and is taking space/being confusing. +2015/8/18 Post Parity Patch Blacklight post parity patch [18 August 2015] TO BE DONE DURING PATCH MAINTENANCE [BLR-980] – Create Onslaught Token MIssions [BLR-970] – Titles need a pass on “rarity” [BLR-962] – Missing daylight camo and Daylight Weapon Tag [BLR-963] – 30 Day of Fight Award [BLR-964] – FoxCat Helmet [BLR-965] – Zombie Girls Weapon Tag – Missing JIRA TASKS/BUGS/SUGGESTIONS FIXED [BLR-966] – Troll Taunt – MIssing [BLR-1036] – PC Client isn’t getting web localization even though it seems to be properly set up. [BLR-905] – BSD – Nor’Easter Ice Pick Axe trail is bugged [BLR-911] – ArmCom Assault Barrel too high [BLR-912] – Mission didn’t disappear after completion [BLR-918] – BSD – Clickable Menus in Settings that Hide [BLR-919] – BSD – Play Game menu potential error [BLR-923] – BSD – EMP while the HUD is disabled results in semi-permanent blindness [BLR-950] – BSD – Have hit ENTER multiple times to get into the game [BLR-959] – Rig is still called Work in Progress RIG [BLR-968] – Web Localization isn’t being loaded by the PC client [BLR-971] – update titles for Drought Survivors to indicate how it is earned [BLR-973] – running client from steam produces this error but still launches [BLR-975] – Unique Rarity Label has no color associated with it. [BLR-979] – double clicking on server browser list has funky results and is confusing to players. [BLR-982] – Current Playlist Templates for EU and US run 16 player DMs [BLR-984] – Having 700+ Friends will cause the friends list to hang for ~3 minutes before it fully loads [BLR-987] – PC is not loading localization over rides correctly [BLR-989] – Players have the Beta Emblem when they should not [BLR-992] – Players received the wrong unlockid for the drought emblem itemid = 644159 should be 64159 [BLR-995] – rename UNIQUE to be UNOBTAINABLE [BLR-1004] – BSD – Can’t disable Spawn Screen Effect, players are annoyed. [BLR-90] – RECEIVER BALANCE [BLR-961] – Missing Items from Players to Follow Up on [BLR-988] – settings menu overlaps quick match dialog RAW CHANGESLIST FIXES UI – hookup new title icons – add content for new boost and title icons – Fixing the Billing and other links for PWE. Now when you click Buy ZCoin, it should not open the Russian zcoin page. – Fixed bad support and forum links for Russian. – fixing click issue with zcoin banners – Fix zcoin banner – Fix logout callback – Don’t tick presence unless logged in – Fixed – EMP while the HUD is disabled results in semi-permanent blindness – [BLR-923] as reported by Aita – Fixed – Clickable Menus in Settings that Hide – [BLR-918] as reported by Shockwave – Updated description text of The Burning Sensation title to be “In remembrance of ‘The Burning Sensation’ SMG Premade created by ZeroArmada” – Show item unlock ids in tooltips in development – possible fix for the black modal BG for dialog boxes not showing sometimes – fix playlist search box arg for engineering – New Spoon icon – on playlist checkbox rollover focus playlist entry – new mutator icons! – cp reset, disable join in progress, force ready up. Switched headshots related icons a bit. – some changes for new marketplace loc – fix double click server browser issue – add unique color – some fixes for mouse interaction with mutator list – fix some menu overlap with the matchmaking widget – missing zcoin markup for German – some splash art tweaks – re-added UI option to toggle spawn FX setting – Fixing duplicated keys from rev #1 of foxmenuUI before Andy can blame me Game – Remove TOCs from CookerSync – Adds rename step to redux.py so we can automatically rename combineTexture.cache to texture.cache instead of compressing. – Possible crash fix for StartOnlineGameComplete delegate not cleaned up on leaving server. – Integrated latest French localization from PWE. – Submitting latest localization files from PWE (German) – Fixing up Weapon Tags and Camo for Promotional Content Re-added content consists of KBMOD Weapon Body Camo, KBMOD Weapon Tag, Extra Life Weapon Body Camo, Extra Life Weapon Tag, FPSGuru Weapon Body Camo, FPSGuru Weapon Tag, IGN Weapon Body Camo, IGN Weapon Tag, MMO Bomb Weapon Body Camo, MMOBomb Weapon Tag, Curse Gaming Weapon Tag, Destructoid Weapon Tag, Game Informer Weapon Tag, GameSpot Weapon Tag, Machinima Weapon Tag, PCGamer Weapon Tag, Xplay Weapon Tag, BroTeam Pill Weapon Tag, Raptr Weapon Tag, PAX Prime Weapon Tag, GameSpy Weapon Tag, MMOHut Weapon Tag, Yeousch Weapon Tag – Fixed global recoil on PC – Quick BFR update – dropped spread a bit for more predictable pattern – Fix BOOL not being UBOOL – Checking in leftover inis – Made Diamond Supporter Titles shorter. – Fixes to Cookersync – Integrating fixes for scaleform – updating icon package to include MLG helmet icons – Updated barrel 09 to lower front sight post – M Fixing AR3 1st p muzzle flash so people can see their targets – Disable ready-up for private matches by default – Add 4 more mutators – Remove stamina mutator – Make time limit mutator default to 10m instead of 1m, new reange is 2m – 30m – More recoil changes – Read title file list – syncing up Dev TSS with Live for QA – Set our BaseURL after we get a valid server so TSS can download from ZCure – Fill out title file read callbacks – Re-enable missing BaseURL warning – Merging Arc fix – Add launch event system service call, not hooked up to anything yet – Removed some log spam – Moved weapon skins to their own DLC (too big for primary weapon DLC) – Moved a costly function native – Fix a profile bug – Allow cmdline switch to force show the region selector. – Also reset default game region to internal(102) instead of localhost(13). – Cook FX_Bandana – Fix some log spam – Rebuilt CookerSync and friends so Orbis sync works again – Add Sphere component to UE3 – Proximity mines now “fizzle” when shot instead of exploding – Proximity mines now use spheres for collision instead of cylinders – Fix missions appearing when they weren’t supposed to do to a hack thrown in to prevent text coloring from happening. Moved to the appropriate location. – Fixed – BLR-912 (Mission didn’t disappear after completion) – Fix sphere pointcheck – Fix orbis executable sync groups – Work on Orbis regions / patching – Hooked up fizzle fx from art team – Fixed BLR-935 as reported by WorstPlayerEU (Proximity Mine hitboxes are not representative of their placement) – Fixed ice pick axe moved the particle emitter to better align with the axe head. also removed the ribbon particle, because i couldn’t get it to look right. I replaced it with additional frost particles – Fixed range on M4X – changing text View Mutators to Edit Mutators – adding Zcoins + to market prompt – updating the BLR PC splash image – Log spam cleanup – Set the GC values to valid settings in defaultEngine rather than just Orbis – Fixed Filtered Words – Added new function to fill in blanks when they aren’t the master language (INT) – updated socket location for KRANE scope – Handling unhandled message for UpdateMission which was being sent from the ZCure server. – Fix for Orbis build with the bad Function pointer. – Moved several functions related to friends list reads native – Vastly speeds up friends list parsing / sorting – Tacticle Spoon, adjusted sugar / medicine ratio – Friend updates are now run through the FriendInfoUpdated callback instead of the ReadFriendslist callback – fixing BLR-941 (Changing titles not working), it was old bad logic – Fix minor memory leak – Change Steam append to use new URL – Fix some log spam – Fix a memory leak from UDN – More useful error messages – Fix parsing for failed to register – added TheEye helmet icon – added AnimeEyes helmet icon – Helmet updates Adding Overmatch Armet – Anime and RX5 Vision “The Eye” – Fix for DEU and FRA localizations for character creation. – THe AllowedCharacters array contained a lot of duplicate entries, and all duplicates are inserted as NULL for some reason. – Removed all dupes and it works as intended. – Killing duplicated unlock ID for 61140 – Fixing the 30 days of fight badge, it’s been mangled. – Re-enabled the Troll taunt for exisitng PC users. Need to update icon. – Include Punk Buster files with the shipping builds. – added troll taunt icon in content – Bump game version – Fixed Kael’s borked text for the Streamer Title. – Resubmitting Arc bypass fix – Added icon for Troll taunt in INI – Reallow two parameters for HandleReduxAction so bKeepFiles is set correctly. – updated scope default camo so it appears correct when using a receiver skin – “The following packages (WPN_Sights) contain materials that were automatically updated due to parent Material or Material Function changes. Please resave and submit to ensure fast load times.” – Doing the above. – Add Russia / Staging back into the region list Maps – Fixed map bugs in, Trench – sand piles blocked collision, and Heavy Metal – a wall was mistakenly lowered – Fixed a bad collision bug in Convoy that prevented you from walking through a certain hallway without jumping BSD-204 – Removed uber shine from concrete in garage on Containment. – Updated Ramp alongside stairs in RIG. It disappeared at Low and Medium World detail Settings, but collision remained. Asset now is always visible. – Fixed a missing collision on some wire spools and a broken collision on a ramp in Piledriver (BLR-845) – fixed bot stuck spot in Seaport, cleaned navmesh in general (BLR-1012) – Added “Block All” to a mesh in Vertigo because it was blocking only weapons, not grenades. – Fixed bug as reported by Screamification https //youtu.be/Xk4AIwnGLUU Still Bugged (work in progress) – Clans and friend support. Friend support will work shortly after patch release (being a server side fix). Clans will need additional work as we have issues that we know need to be fixed; but we didn’t want to delay the patch further. +2015/7/27 Parity Patch Blacklight Retribution Parity Patch Notes [27 July 2015] Hello all! Thanks for your interest and continuing support of Blacklight Retribution – both on PC and PS4. ) The purpose of this document is to outline most, if not all, of the changes that the game has undergone since our last major patch on PS4. What you see described in detail below reflects changes to the game since that last major patch. Note that since then, on PS4, we did release a small patch that added some Rocket League (great game, check it out!) content and a small fix for the “HRV Glitch”. Additionally, included below, is a quick summary of all the changes to the PC that PC users will be experiencing. In all honesty, there have been so many changes to Blacklight since the last PC patch that digging up and reviewing ALL of the changes would have been impossible, that we are only going to provide a quick summary, based mostly on the FAQ that we previously posted on our website (www.hardsuitlabs.com/2015/05/blacklight-parity-patch-update-news/). So below you will find three sections to this document Summary of changes to PC game based on our FAQ Export from our JIRA of fixed Bugs and completed Tasks since March 25, 2015 Export from our source control of relevant changes to the game since March 25, 2015 In their totality, the above 3 things should give you a sense of how the game has evolved and how you may or may not be affected. So with out further ado, here are the changes that you can review SECTION 1 Summary of changes to PC game based on our FAQ For reference you can find the FAQ here http //www.hardsuitlabs.com/2015/05/blacklight-parity-patch-update-news/ NOTE All of your settings and loadouts will need to be reconfigured!!!*** Build Related – Reduced the size of the download of the client to around 4GB – New Install size should be about 5.09 GB – Old BLR Build with the folder “LIVE” under it can be deleted – New launcher build and deployed for PC Users – Logging in now happens in the launcher/patcher and no longer in the actual game client – Game does not require the ARC client to be running. Can launch the patcher directly if you want. Items and Inventory Related – Datanodes have been removed from the game – Datanodes in a users inventory have been deleted – Game no longer supports an inventory that players have to manage. Instead it behaves more like an unlock system – Game no longer supports inactive items. Items are now always activated at time of purchase – Items owned by users that were inactive, are, as of now, activated. – If a user owned multiple timed durations of the same item, those items are now combined into a single item with a duration equal to the combined duration of those items. Some additional “bonus” time has been added as well to account for the upgrade process. – If a user owned multiple instances of a permanant item, they will keep the first instance of that item. Additional instances are deleted. – Mail system has been removed – Items left in the mail system have been deleted – Merchant Pass has been deleted. It is no longer relevant – Any Inactive XP Tokens you own have been activated and applied to your account, up to the max level cap. – Any Inactive GP tokens you own have been activated and applied to your account. – Some unopened Bundles will be refunded to you in the coming days/weeks, if you had unopened/inactive versions of them. You can find the list of those bundles here Tactical SMG Chance Pack Ghost GP Chance Pack Crusher GP Chance Pack Hero Chance Pack – M.A.R.S. Chance Pack – Hero Viper Basic Skin Chance Pack – Hero Viper Premium Skin Chance Pack – Hero Deacon Premium Skin Chance Pack – Hero Grendel Premium Skin Chance Pack – Hero MARS Basic Skin Chance Pack – Hero MARS Premium Skin Chance Pack – Hero Lilith Premium Skin Chance Pack – Hero Ghost Premium Skin High Explosives Pack Medic Pack Stealth Pack Engineer Pack Armor Pack Survival Pack Sniper Pack Starter Pack Evacuation Pack Emblems Corporate Logos 1 Emblems Corporate Logos 2 Emblems Secondary Weapon Pack Emblems Combat Letterset Emblems Urban Letterset Sniper Kit Assault Kit Taunt GP Chance Pack Hardsuit Camo GP Chance Pack Glacial Grendel GP Chance Pack Bundle – Onslaught Bronze Pack Bundle – Onslaught Silver Pack Bundle – Onslaught Gold Pack Bundle – Lover’s Bundle Grenade Pack Protection Emblem Pack Scrim Pack 2 Platinum Pack – New weapon attachment system – attachments are now purchased on a per reciever basis. If you buy a scope and want it on 3 guns, you will need to buy it 3 times. – Existing players, who up until now had had global attachments, will get copies of those attachments for all weapons that they own. Thus their current user experience will not change, but if they buy a new gun in the future, they will need to get the corresponding attachments, if they so desire. – Pricing for attachments shouls be updated to reflect the neeed to potentially purchase said attachment multiple times – Premade/Preset weapons no longer exist – If you owned a permanant version of a premade, you now have all those disparate parts permanantly instead. Those parts are applied to the relevant reciever that was the premade you owned. – If you owned promotion premade then you own all the parts as per the above, plus a title commemorating that premade. For example, users who owned The Burning Sensation premade, will now get a Burning Sensation title in addition to the parts of the premade – Heroes have been removed from the game as you previously knew them. New Heroes function as character skins – basically the same thing as a Camo, but instead of just changing your camo color, they can change your entire model, geometry included. These can be found under the Camo/Skin selector in customization. – If you owned a hero permanantly, you now own their Skin, Depot Weapon, Premade (broken up as per above), and taunt instead. – Hero taunts have been broken up to be able to work with all characters (kinda). There is a bug associated with this currently where a female hero taunt works fine on a femal model, but on a male model it will break. We are fixing this. In the meanwhile, you have the taunts, but you may not be able to properly use them until we get a new fix out. – Blacklight Prime has been awarded to all existing PC users. – Blacklight Prime unlocks GP Permanant prices for all GP purchasable items. – Other items are available for GP Permanant prices on a weekly rotation. Additionally, some other items are always avaiable for GP Permanant (Combat Rifle, SMG, e.g.) – All EXISTING PC USERS will get Blacklight Prime automatically. – Offshore map has been removed from the game – Slumlord map has been removed from the game – Dropzone map has been removed from the game – Siege game mode and Nuken map have been removed from the game – Netwar game mode has been removed from the game – Premium servers have been removed from the game – Server Mutators have been added to private matches – Global Chat has been removed from the game – Whisper chat has been removed from the game – Voice over IP has been disabled. – Parties on PC have been temporarily removed from the game – Report Bug and Report Player have been removed from the game – Level progression and curve has been refactored. You will keep the same amount of XP but your level may change – Twitter integration has been disabled – FOV has been converted from an X constrained model to a Y constrained model (more similar to what hollywood does with widescreen) – Exotic ammo types are no longer controlled via magazines – new category “ammo type” has been added – Magnum ammo is currently identical to normal ammo, but has different visual/audio fx. When Magnum ammo gets updated you will have it already if you own it now (pre-parity). – Explosive and Electro have their old functionality but will be updated along with Magnum ammo. Like magnum ammo you will already have it if you own it now (pre-parity). – Explosive, Electro and Magnum will not be for sale until they are updated. – Incendiary and Toxic ammo types have been updated to reflect latest functionality from the console. – Toxic ammo now does less damage on impact than normal ammo, but applies a small toxic damage over time and temporarily reduces the maximum health for a limited period of time – Toxic Gear now prevents the reduced maximum health debuff from Toxic Ammo – Incendiary ammo now does less damage on impact than normal ammo, but applies a burn damage over time. The DOT for incendiary is larger than for Toxic. – There are possibly other changes that we may have missed. Consider this to be “fine print”. SECTION 2 List of Jira Tickets for Current Version Completed Tasks – LMS/LTS functionality added to PS4 – Server mutators added for private matches – Revitalized PC Presence Server – New Icons for Titles and 100% Boosts[ – Implement a PC Style Server Browser for PC versions – Add an “apply” button to the menu flow for PC settings menu – ENG UI Hook up Add Friend button on friends list – Marketplace – Feature item scroller does not accept mouse input – Update PC presence an friends functionality to work with refactored backend – Recent changes to HS necessitate un-nerfing the flamethrower – Remove unmodified stats from armor pieces in the UI – CLAN SUPPORT implemented – FOV Slider refactored and implemented – Mission System implemented – Rig – Audio implmeented – Missions UI implemented – Game Modes Last Team Standing / Last Man Standing spawn streams updated – RECEIVER BALANCE – ENG Add the ability to add friends from the player list or non-friend clan/party members – Rig Finalized – PRIVATE MATCHES implemented – FRIENDS SYSTEM powered by BACKEND implemented for PC (rather than rely on Sony friends) – Removed uneeded server filters – Implement informative error messages for Code Redemption – Add new flag to playlists to have a random starting index to avoid possibility of non randomized map rotations – Convert FOV values and calculations such that Y axies is fixed rather than X axis. – Scope Zooming should be FOV modifications and not FOV targets – Updated all scope FOV values to refelct change to Y axis constraint – Toxic ammo now does less damage on impact than normal ammo, but applies a toxic damage over time and temporarily reduces the maximum health for a limited period of time – Toxic Gear now prevents the reduced maximum health debuff from Toxic Ammo- EVAC and Vortex added to PS4 – PC Veteran Rewards Pack based on things lost in the udpate implemented – [PS4] Change matchmaking regions to “Your own” and “Worldwide” – Have UI auto-query new store values – Add button somewhere in UI to go to new training level – Add “bDisabled” flag to playlists so that default playlists can be disabled – ENG UI Respawn widget timer issue – Refactored login to work with new patcher/launcher – HRV Glitch fixed (reported on PS4) – [PC] We need Lobby Chat in Intermission – Hacking menu should close with RMB just like the depot – UI Move loadout switcher to right side on PC – PC Mouse Option to disable Mouse/Look Acceleration by default – Annoucement Pop Up Dialog on Login – Remake the PC login UI – Ensure Gore settings are functional on PC – Disable stamina, but not by making it 999999999999999999 – Remove icestorm logos – Hide missions that are completed and rewarded – Make ~5 daily missions – Updates Stamina usage in Twitch viewing OS integration – remove stamina from HUD – FOV Adjustments to be made for various scenes – Remove Zombie Girl Logo/Graffitti from Decay (and other maps) – Hero Scene – Chat in Hero Scene – Hero Scene – Don’t Auto Show the scoreboard during hero scene – Expose Mouse/Look Accelleration to the UI Options – Make Loadout Selection while dead be used with Mouse Wheel and W/S – Sanity Check “Register user” button and user capture identification so we know if a user is steam or arc. – Make accept auto focus after choosing purchase option – Timer indicator for Daily/Weekly missions – New Splash Art – Remove Steam DLC Purchase Options from Steam – since they will no longer work after Parity – Toxic updates – Default the game to DX9 instead of DX11 – Implement Names for Weapon Skins – Ensure new items are properly added to the LIVE store – Announcement Dialog Scrolling Banner Support – Announcement Dialog Right-Thumbstick should scroll body text up/down – Announcement Dialog downloadable banner image support – Localization pass – Fix production master server so we can log in via the patcher – Validate upgraded accounts on production server – Fix chain link doors in Heavy Metal, since you can’t shoot through them. – Remove win32 .exe’s that aren’t used or needed – Patcher – default region to US – [PS4] – Update TSS to undo negative Ammo Override for the parity patch – BACKEND Private Matches need to be implemented – CLIENT Private Matches UI – Create Generic “TItle” icon for player title items – PC Vet Pack Tier 1 – Title – PC Vet Pack Tier 1 – Emblem – PC Vet Pack Tier 2 – Helmet – PC Vet Pack Tier 3 – Weapon Skin for AR – Engineering support for new LMS stream – VIEW PROFILE in player list should not be on PC – BACKEND Clan Support – CLIENT Clan Support – CLANS Add social flyout when you receive a clan invite – CLANS Purchasing a clan and cancelling takes money and doesn’t give clan – CLANS EXPAND does not work on PC – CLANS EXPAND should probably not be a drop-down menu option on the clan leader – CLANS Set MOTD does not work on PC – CLANS Set MOTD should probably not be a drop-down menu action on the clan leader – CLANS TOGGLE INVITED should not be a drop-down menu item on the clan leader – CLANS Button prompts for clan actions (VIEW PROFILE, SELECT) should probably not exist as they do nothing and have broken icon references – CLANS Need a button to invite users to clan via user name – CLANS No push notification for receiving clan invites – CLANS Leader of clan with no other users shows 0/20 members in clan information – CLANS Should probably keep the option to invite others to clan even if an invite is already pending and just show the error dialog. – CLANS Rejecting clan invites do not work. – CLANS Accepting clan invite does not work – CLANS Clan leader removing clan invite refreshes list to no longer show pending clan invites – CLANS Cannot differentiate visually between users in clan who are actual members and just pending users. Fixed Bugs – Can fall in between wall and shanty in Deadlock – Title softlocks when loading in to certain maps from the game lobby – Viewing Dataluxe X2 Tactical from the front causes it to become invisible – Purchase dialog – Dialog is not centered – CLIENT SOFTLOCK Leaving a match can result in a softlocked UI state – Players do not see their own messages in a DM – Cyrillic Player Name Look Up Doesn’t Work – Not receiving presence updates when joining clan – ENG UI Hook up Add Friend button on friends list – Accepting friend invite does not update to show the person is online – Being kicked from clan doesn’t update clan information properly – Promoting doesn’t work – User accepting clan invite does not refresh the list properly for others. – Clan member list doesn’t update properly for members already in clan when others join into the clan. – Re-enable social notifications that are disabled – Clan tag does not show up in player card or player lists in online games – Fix In-Game Player Presence – [CONSOLE] Button prompt to add member to clan via username – Presence for clans broken immediately after creating clan – XP counts still don’t match in AAR – Customization filters are not working on PC – Bug when dying in the pause menu. – Don’t reset level display to 1 when the backend acts up – When funds fail to query, triangle overlaps text in currency window – Incorrect Error Message Displayed after quick search and game leave – Armory items don’t have any tooltip show up – Giant friend lists can hitch the game for a very long time in the social menu, causing people to consider it frozen. – Return to intermission button in AAR is missing loc – Headshot kills do not prevent player revives anymore – Text cut off in some Gear listings – Text cut off in some Depot listings – Button icons for gear don’t show proper in-game placement when a non-usable gear item is equipped – Customization – Emblem – Color picker only shows black as a color – Customization – Emblem – Selection highlight too prominent – The T in “Permanent” when buying items with zcoin is too close to the edge of the box – Stat Viewer appears behind UI elements – In Game – Depot – “CP Available” text appears incorrectly – [PC] Practice mode not launching – [PC] Selecting the Redeem Code with the controller does not bring up the keyboard – Map rotation always seems to not be respected – [PC] Stamina and Health bars not shown in bottom left of screen – [PC] The player’s weapon some times appears while using the hardsuit – Auto Shotgun’s Barrels have incorrect icons (its using the grip icons) – Running with the katana tends to have its ground scrape sound get stuck on – [PC] Inspecting a player / bot after death does not show the player the killer’s loadout – [PC] Depot menu sometimes displays smaller than normal – GetValidMapsForGameType doesn’t seem to filter any maps – Private matches should not host migrate; instead kick to menu – ‘Current Loadout’ has the ‘T’ cut off at the end – Mouse sensitivity setting in UI needs to allow equal levels of adjustments in each direction from default – Player turn animations may be limiting camera movement and creating a feeling of “stuttering” – [PS4] “Checking Server Status…” never ends – Letter-boxing isn’t working in UI – Decals act as if in foreground (show through walls objects) – No collision on pillar in Trench – [PC] Game crashes if you push F12 – updating preview mesh should not happen on mouse over – Friend Lists is broken on PC – Server Browser needs a refresh button – Ready up doesn’t respect other players – Motion blur option – Option for Brightness appears twice – Camera jitters / hitches while mouse looking on PC. Only while using pawn. – Playlists do not work (always opens to TDM) – Scope. Gun and Sight Combo make for unusable Iron Sight – “Master Loadout Glitch” Players can equip items they shouldn’t be able to by mashing buttons – [PC] On Settings open menu, VIDEO is auto highlit – Cursor roll over on arrow buttons in Settings not responding – Steam Achievements not working – “Please wait before trying to log in again” on PC should not happen – A pop up please wait message is displayed when first entering the server browser – MasterServer stops responding – LTS OFTEN confuses enemies and teammates in the Blue/Orange Colorization – In Customization, clicking equip doesn’t put it on the preview on right – All mouse-over tooltips missing in customization – Alt Tabbing while switching menu states can cause loss of focus – Unable to navigate title menu with mouse – Occassionally Master Servers seems to not allow users to find games – Character model vanishes while in the Customization menu – Bunch of level bugs from youtube video (Vertigo, Trench) – reported by RomanAW – Player is able to get outside of the rig and looks to be floating in the air – Incorrect billboard colors after team swaps in SND/LTS – Wins in LMS overlaps a lot of text on scoreboard – [PC] – On PC, LMB and RMB functionality for Hardsuit needs to swap – Clan tag didn’t update in dedicate server – FOV affects hardsuit cockpit first-person mesh – Can’t join a clan member’s game from clan member list. – Chat window does not disappear after entering gameplay from specatate – If I own a trial version of a weapon, I can’t buy it again (perm or more time) – Patcher does not give feedback to player while extracting – Remove aim assist options for non-console – Lotto boxes have PS4 button icons on PC – Clan tag shows up in UI for non-accepted clan members – Patcher sometimes doesn’t leave itself in a good state – Purchasing ammo doesn’t show correct target weapon in purchase UI – Disable Male Flex Taunt on PC until fixed – Fix Patcher patching itself in subsequent versions – Patcher throws errors when logging into arc – Muzzle Flash FX is offset too far from the tip of the gun – Add gun skins to the store – Infinite loop crash – Revive widget showed orange border when selected, even though it was usable – X on color selector under emblem does not work – When choosing a character’s logo colors the X button at the top right does not close popup – No way to log out of the game if you “Remember Me” on login – Custom playlists crash – Dedicated server round end does not replicate to clients in a timely fashion – Parity helmet missing from the build – Decay is not available in Practice Mode – BCL Weapon Tag appears as KBMOD weapon tag. – BSD – BCL Weapon Tag appears as KBMOD weapon tag. – BSD – Alternative keybinds not showing in Control Binds menu – BSD – Slight Texture Bug On DeadLock – Turn off the Block Zero Extent collision flag on all triggers in all levels – BSD – Chat overlays Leave Match button – BSD – No exit game button on splash screen – You can’t click on, or get tool tip info from, items appearing in gradiant in items list – Vortex victory screen lighting is very bright – BSD – Back Button is not clear in UI SECTION 3 From HSL Source Control UI Changes – Fixed being able to equip mods on receivers they shouldn’t go on by doing something secret we’re not telling anyone about (aka “Master Loaodout”) – Fix for friend list hitches being really bad with large friend lists – Hooked up new mutator selection dialog box – UI Art update for mutators dialog – Updated the settings menu button for PC – Fixs to the button tooltips in the settings menu – Fixed serverbrowser from game transitions – Added new mutator icons – Added a dialog for creating private playlists – Hooked up the custom playlist editor for private invite only matches – Fix for black BG not showing sometimes on PC dialog boxes – Updated GORE Settings for PC – Toggle Scoreboard Settings – Adding some Mission UI strings – Fixed some menu back transition issues – Fixed some private match listing positions so it isn’t off the screen – Made the back button clickable area larger – Added localization for social menu click – Fix server browser popup – Made it so double clicking on a loadout button causes the button to become the default – Added prompts for selecting default loadout on PC – New icons for boosts, titles and load outs – Clarified cosmetic armor and weapons in server mutators more. – Added training level to the bottom of the play game menu – Replaced old practice command group with new practice – Made prompts in the pause menu disappear when you’re using the mouse so they will not be in the way – Was due to no one in friend list information actually having a uniquenetid, causing all the false positives to fire in a very large loop – Also fixes friend list refreshing scrolling to bottom of list sometimes – Enabled new Prime UI to better communicate what prime is/does to players – Updated social menu slideout – Removed loadout button from intermission – Fixed clicking on sliders so it’s more mouse friendly – Fixed stepper arrows not working with mouse – Fix some stat text cutoff – Removed duplicate brightness setting on PC – Fix for emblem highlight to be less harsh so it will not make the orange logo unreadable – Adding Mouse and Mouse Tight Aim Sensitivity – Zcoin Wallet will no longer disable incorrect negative values. That way people will not panic if the server does not respond. =) – Making the landing page navigable – Limiting the landing page to only 4 items – Made it so the landing page and the marketplace refresh the items when you buy one – Updated server filters for PC parity – Made it so priavte match playlist creation checks the filtered gamemodes – Changed search and destroy abbreviation from S+D to SND to make things consistent – Updated some loc to not be all caps – Added button for add clan member – Can now create a clan on PC – Change some clan localization – Spaced clan information apart to not over overlapping purchase clan button on top of pending title – Fix setting clan MOTD button not working – Allow text dialog boxes to enable spaces as valid characters – MOTD works now as long as presence server is working properly – Remove “View Profile” from clan member drop-down on non-console because PC players do not have console profiles – Fix accepting and declining clan invites not working on PC – Can now join and decline clan invites properly! – Fixs to mouse over tool tips in customization UI – Fix for tooltips not popping up on items – Fix minimart items being disabled after transition – Fix clan information and clan list not refreshing properly for a person who is kicked from a clan – Notification for receiving a clan invite – Update clan invite list when receiving clan invite – Showing a question mark icon for clan members who are pending invite – Fixed promoting, demoting, and making officers into the leader – Changed MOTD to be settable by clan leader and officers – Add an “Add Clan Member” button to clan member list so that users can be added to clan via username – Change some badly written loc strings! – New create clan UI icon – Clan social category now gives option to activate a previously purchased clan creation item – Updated localization for clan item activating – Added support for updating clan generic textbox and button – Updated clan purchase button – Some changes to market tiles appearance to clean them up – Re-enable social notifications for clan member updates – Flyouts for everything except clan members coming online and offline – Online/Offline notifications should be re-added when presence is fixed – Fixs some for sum incorrekt spelligs – Fixed settings button rollover arrows – Fixed license for clan purchase in social menu – Fix clan member presence updates in most cases – Social notifications for clan members coming online and offline – Remove question-mark icon for pending clan members – Added presence information for clan members – Please report new bugs if there are problems with clans – Added new refresh button to server browser – Added new mouse acceleration option on PC – Fixed “label” showing on slider focus – Much better transitions back from settings menus with mouse (clicking back goes to the previous menu) – Fix for some issues with server browser dialogs not being removed – Add slider to Advanced Video options that lets you change the size of the streaming texture pool. – Includes some fixes to keep various settings options from getting erroneously clobbered – Fix map names not showing up in custom playlist creator – Adding ability to add friend from player context menus – Fix Deny Friend Invite loc bug – Remove aim assist option from PC – Got bubblegum stuck to my shoe ( – Adjusted the main menu upwards to make more room for the news panel – Removed progress bar from news panel if it only has one item – Made front page news a bit taller – Added support for multiple banner images – Offer banner will auto-scroll now – Update default news banner image – Adding working localization and icon for new daily Lotto Box – Fix for console prompts on Lotto Box popup when on PC – Various items were using tooltip instead of desciption text. Cleaned this up – Updated localization for some broken armory text – Scrolling with mousewheel in chance pack UI on PC – Fix chat not going away when switching to spectate – Fix for [ENTER] not closing HUD chat is some situations – Updated Localization for Emblems – Fixed bug (Vote Kick Text is incorrect) – FIx for “Sight 17 (OPRL Holo Sight) has incorrect Tool Tip Text.” – Adding icon to titles to show when an item is an award to differentiate between equippable titles and award titles. (Both currently look the same) – Fix Lotto Boxs not showing “buy” or the price in the chance pack ui on PC – Fix Lotto Boxs not showing sale price when opening the chance pack ui – Added sales timers to better communicate opportunites to players – Localization updates and additions – Updated Sales timer settings so they can be modified with out needing to patch – Remove stamina from the stat info bars in the armory – Removed UI referneces to the old Stamina stat – Renamed “armor” to “head protection” to more accurate represent it’s function – Improved UI icons for title items – Updated PC Depot UI to include numbering – Default to fullscreen – Fixed a bug related to copying to a directory that doesn’t (yet) exists – Enabled Alt Bindings Column for PC control binds – PC Settings screen back button feed back improvement – Resized the special offer prompt UI – Added new respawn art changes – Fixed revive colors – Added close button and functionality – changed art for settings buttons – Announcement dialog box now scrolls with the right thumbstick – Fixed armory filter checkboxes not working correctly on PC – Fixed an issue with revive widget and revive – Fixed mouse over on depot armory items – Fixed line wrapping in armory items – Fixed the list moving when clicking on a friend/clan – Fixed color swatch on the X button not working – Added more support for sale info in armory and purchase dialog – Added yellow sale to featured banner item – Moved the code redeem option to the options menu – Fixed navigating between settings scenes on PC making the scene not load – Fixed a masking issue with the new back button – Fixed armory grid to not block tooltip functionality MAP CHANGES CONTAINMENT – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Navmesh cleanup to help AI path more correctly – Numerous small bug fixes CONVOY – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed a bad collision bug in Convoy that prevented you from walking through a certain hallway without jumping – Numerous small bug fixes CRASHSITE – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed stuck spot on rock – Fixed a Detail Mode Setting on an asset that was causing it to dissappear when detail mode was low or medium. – Fixed collision issues with grenades going through meshes – Numerous small bug fixes DEADLOCK – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed stuck spot – Cleaned up pathing volumes in deadlock – Special attention to a bot stuck spot – Simplified Nav Mesh to fix area where bots were getting stuck – Fixed a collision hook on running up stairs – Fixed collision issue – Fixed mesh culling bug on Deadlock – Fixed an out of map issue, exposed by blocking volume on top of elevator. – Removed floating geo on Deadlock – Numerous small bug fixes DECAY – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Removed Zombie Studios logo in “Decay” – Rebaked lighting on Decay – Removing “Block Zero Extent” trace checks on triggers so they won’t be considered for collision checks – Numerous small bug fixes EVAC – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Navmesh cleanup to help AI path more correctly – Numerous small bug fixes – Added EVAC to PS4 HEAVY METAL – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed a bot stuck spot – Allowed shooting through a chainlink fence – Fixed map bug where a wall was mistakenly lowered – Numerous small bug fixes HELODECK – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Numerous small bug fixes METRO – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Navmesh cleanup to help AI path more correctly – fixed out-of-map bug in Metro – removing “Block Zero Extent” trace checks on triggers so they are not used for collision checks – Numerous small bug fixes PILEDRIVER – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – removed streams from persistent – fixed collision issues reported by Zero Armada – Numerous small bug fixes RIG – Added new Map “Rig” SAFEHOLD – Fixed bushes in Safehold blocking bullets (disabled per poly collision on leaf foliage material) – Fixed bad collision (would catch you when going up stairs) in Seaport. – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Navmesh cleanup to help AI path more correctly – Fixed an out of world map bug – Put a vehicle blocking volume in the tunnel to prevent hardsuits from driving down there – Fixed invisible collision (added back meshes where there were none – but there was collision) – Numerous small bug fixes SEAPORT – Fixed bushes in Safehold blocking bullets (disabled per poly collision on leaf foliage material) – Fixed bad collision (would catch you when going up stairs) in Seaport. – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed get out of world bug. Rebuilt paths/lighting on production – Numerous small bug fixes TRENCH – Made some aesthetic adjustments to Trench generator. – Fixed collision on pillars – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Added blocking volume to a door with missing collision – Updated color coding the level a bit more to provide more awareness. I was getting lost when working on it. – Turned off shadow casting on sand piles to save on performance – Fixed a depot and area of the map not being properly lit. – Fixed a light map seam on some pipe meshes by rebuliding light map UVs. – Fixed bug where sand piles blocked collision – Numerous small bug fixes VERTIGO – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Fixed a spot where players could get to a place they shouldnt – Navmesh cleanup to help AI path more correctly – Fixed a vertigo issue that allowed players to bounce into the skiy. – Fixed some wonky collision as well as an out of map bug. – Numerous small bug fixes VORTEX – Added Vortext to PS4 – Added separate stream for LMS so we can make LMS specific changes distinct from the core map – Added collision to some pipes missing it – Reduced bright light on Vortex for end of match hero pose – Numerous small bug fixes CONTENT GAME CHANGES – Removed Datanodes – Fix for infinite searches due to timed out pings not being treated as the same IP as the original request – Improved retries for logins if the connection is having trouble – Fixing process hang on shutdown – Fix clan list updating improperly when new members join clan – Updated private matches to support console and PC functionality – Fix for PC playlists – Presence server now reconnects if it fails to log in – Prevent user name overriding for steam users – Updated Arc SDK – Removed other stam related twitch mods since stam is gone – Fix DX11 shadows and shader linking errors – Unified content cooking so PC and console are identical – Additional logging for playtests to help find problems more quickly – Including substance redux packed textures so the download size will be much smaller – Add warnings when we can’t resolve a DNS address – Potential fix for server filter list showing too many filters – Fix engine config not saving after changing video settings so settings will not get lost – Moved several functions out of unreal script into C++ for better performance – Localization Tool Work – Added supported for AND / OR string searching – Adding some more mission support – Fixed playlist hitch – Added a new Gold default item set – Added gold item icons – Created Titles for premade conversion for the compensation in the parity patch. ) – Changed package settings so bots can spawn on pc – Fixed Dataluxe Tactical chest piece as it was incorrectly labeled – Changed Blacklight Prime Membership to Blacklight Prime. Changed Blacklight Prime Member to Blacklight Prime Owner. Membership implied subscription fee, there is none. – Added GOLD icons to appropriate packages – Fixed shrinking Depot icons issue to make initial selection more consistant – Added depot navigation callout – Removed the jump penalizer from the flamethrower… It no longer costs stamina to jump with the flamethrower. – FOV now locks against y-axis which causes a more movie-like effect on screen-loss when changing aspect ratios. – Zooming mechanics largely kept the same with target FOV’s – Camera mechanics changed to be based on a slider – TargetFOV is still a thing and is based on assumed default of 90 FOV – Increased FOV range to [60, 150] – Tweaked closed scope mesh positions to move slightly based on FOV to remove seeing beyond edges at high FOV’s. – Fixed position of preview meshes in YFOV – Adding content to game to support various awards. Still more to come so stay tuned! – Made it so the hacking minigame now can be closed with RMB – Fixed the camera jittering due to bone location caching – Fixed being able to revive on Headshot Kills – Just tear is out! – Added BugBasher Title – Fixed the level display as 1 when the backend fails – Fixed an issue so that Clans don’t check console or arc – Fixed not seeing clan tags in online matches on PC – Chat is now present on PC in intermission and lobbies – Made it so that after selecting a price the cursor defaults to Accept. (was for console only, now will work if using the controller) – if only 1 option is available it will now be selected automatically and take the player to the Accept Button – Added a new package for ak weapon models and textures – Added a new package for AR weapon models and textures, updating AK weapon package – Added a new package for ar3 weapon models and textures – Fixed clan expansion! – Removed the tops of the rings on the barrel sights – Make private matches start as a standar private match so they shutdown when empty – Updated clan creation icon – Made it so the add clan/friend button not animate when highlighted – Fixed FOV for certain Third Person views – Added HSL emblems, Emblems for Bots are a fixed color, Player Emblems are customizable – Fixed Katana charge sounds, they now end when they should – Fixed HUD chat – Removed automatically showing the scoreboard at the end of rounds. – I hate my life… build issues – [PS4] Changed matchmaking to use only two regions “Your Own” and “Worldwide” – Fixed incorrect team colors in billboards after team switches – Fixed player weapon floating around while inside a hardsuit – Don’t hate me for config arrays! It’s how it was previously written! ) – if(equipped.is(‘spoon’)) unequip(); // There is no spoon – DM matches are shuffled again – Fixed playlist cycling. – Fixed random shuffling not being consistant – Fixed dedicated servers not showing clan tags on Player Lists – Animated the hsl emblem, isolated the bot emblem – Moved loadout swapper to the left side of the screen – Loadout swapper now scrolls with mouse wheel, arrow keys, and W/S keys – Added an input guard to prevent spamming of the W/S keys on death to try to counter accidental loadout changes – Fixed practice match bots starting at 1 instead of 9 – Fixed an issue with the camo list thinking everything was consumable – Fixed MotionBlur and Letterbox. – Fixed player names having incorrect colors after team swaps in LTS – Fixed an issue showing incorrect max players for servers in server browser – Fixed icons for gear items being incorrect in the armory if you equip a non-wieldable gear item (such as protection gear) – Fixed an issue with the Mission Timer – Added better mission support, now displays time remaining and has the ability to trash expired missions. – Will hide missions that have been completed and redeemed, storing them until they expire and can be trashed – Fixed taunts going to the wrong index after equipping them – Added Parity Emblem – Drought Survivor, Parity Title – SURVIVOR OF THE DROUGHT, Parity Helmet – Helm of the Drought, Parity Weapon Skin – The Droughtbreaker – Fixed offset iron sights. – Added a new dialog box for announcements – Fixed game modes to add TDM – Fixed an issue where trashing missions caused a softlock – Fixed an issue where the dialog box displayed as ‘undefined’ when buying elemental ammo – Added Veteran helmet – Added skinned weapons packages – Added new Veteran Helmet and reciever. – Added updated weapons skin packages – Added a new profile setting for vehicle FOV’s – Loading screens on map loads are now re-enabled for all platforms – Fixed the expired flag in the missions list – Added updated icons – Fixed idle kicking not working for players in round-based game modes – Updated Veteran Weapon skin – Updated primary skins, updated LOC to remove errors – Added AR Vet skin – Fixed heal injector bugs so that personal and player heals are onb the same timer – Fixed incorrect animations being used when picking up your thrown tomahawk without the detonator actually equipped – Added the Golden Grenade and Golden Knife – Depot can now purchase items using number keys – Fixed weapon skins for LMG – Updated the PC splash image – Updated AR weapon skins with a new barrel – Updated AR3 weapon with new barrel, updating AR, AR3 icons – Updated SMG 3rd person mesh and icons – Increased engine pool sizes for Audio – Fixed an issue that did not allow shooting through a chainlink fence – Fixed localization issues on the PS4 where the sensitivities of the controller did not say “gamepad” – Removed stamina stats from Lower Body armor – Made it so default gamepad sensitivity settings were not suck – Updated FP muzzle brake effect so it doesn’t appear to float – Added volk34r helmet packages and icons – Created clean concrete material for Gun Range – Added Volk34r Elite helmet – Fixed dedicated server custom playlists – Fixed spectator prompt/chat overlay on PC – Fixed depot issue with mouse cursor – Added being able to sort private match names – Added BCL weapon tag mesh and textures. (Because the other one got nuked somehow) – Updated filtered words. – Fixed the control bindings to highlight with the mouse – Changed MARKETPLACE to SPECIAL OFFERS – Added packages for MLG helmet variants – Hid the reticle and crosshair when initiating a thrid person taunt – Fixed map sorting in practice settings – Changed ZEN to Zcoin – Fixed default values button in settings menu in Spanish – Fixed SARK barrel icons – Fixed a bunch of missing loc strings for emblems – Fixed Spanish localization. – Added close tab on splash screen – Added support for alt bindings back on PC – Player pawns now rotate twice as fast resulting in less-noticeable running in the wrong direction when turing the camera fast – Adding Weapon skins to PC – Fixed an issue so that new helmets are now consistent across platforms – Fixed ZCoin from Zen again. this time without getting rid of all caps. – Removed the all caps names for bundles – Updated ice axe gear mesh to only use one material – Changed fireRate on Tactical Spoon to 1256 – Changed Damage on Tactical Spoon to 82 – Changed baseRecoil on Tactical Spoon to 0.0 – Changed recoilVectorOffset on Tactical Spoon to (x=0.0, y=0.0) – Added misterSpoonBeam behavior to Spoonicorn – misterSpoonBeam does 0 damage but renders target unable to fire or move for 3860 seconds – Added music to misterSpoonBeam – Note have legal verify usage rights with Mr. Astley’s management team – Finished receiver cleanup – Hostability checks now run on main menu – Added icon for Supporter Title animated icons for permanent cp/gp/xp boosts – Game invites re-implemented for PC +いつかの NEW CONTENT 荒廃した大都市の中庭で戦え! ドロップゾーンマップ - この台無し大都市中庭の制御のための戦いの敵を! バリケードMK.2 - この新シールドは、視認性を備えておりシールドで打撃攻撃をした際、敵をスタンさせますが地面に設置できません クロークMK.2 - このクロークは制限時間がありますが、IRスコープから視認されなくなる IR保護ギア - 装備したとき、IRスコープから視認されなくなる ソニックトマホーク -このトマホークは爆発こそしませんが、高い攻撃力と鋭さを持ちます。 レベルキャップが50に引き上げられました!新しい報酬はレベル45とレベル50に到達したエージェントに報酬があります。 BALANCE CHANGES BFRの基本ダメージが55から50に低下 コンバットライフルの移動時拡散率は、3.00から3.66に増加されました。 コンバットライフルの反動は11.33から8.23に減少しました。 スタン手裏剣の非直撃時スタン持続時間は60%削減されています。 爆発トマホーク用*ダメージフォールオフ半径を半分に短縮されました。 移動時拡散率とスコープイン時間は、武器に装着されたパーツの重量の影響を受ける。マガジンの重さも加味される HRVジャマー(背面装備?手持ち装備?どっちだろう・・・)がキャンセルされることはもはやありません リペアツールはそタレットとバリケードを修復したとき耐久性を2倍に増加させることができます。 HRVジャマーはS+Dモードにおいて、その半径を味方プレーヤーから青のリングで表示されます。 スタミナが体力200未満の装備になると増加するようになりました。増加範囲は最大150で+5秒〜190で1秒の範囲である。 体力237.5とヒーローの体力237は238に切り上げます。 試合終了後プレイヤーは、直前の試合から自分のスコアに基づいてチームに並べ替えられています。 BUG FIXES 密着状態での近接攻撃でバリケードを貫通して攻撃できた不具合を修正 Going into Spectate mode while holding a flag or bomb will no longer prevent other players from interacting with it.(観戦モード時にフラググレネードの類の起爆が干渉しないように修正???) 梯子に登るときのアニメーション範囲を減少 Vertigoにてエリア外に出る不具合を修正 OffShoreにてエリア外に出る不具合を修正 0GPのアイテムを購入した際にGPの表示が0になる不具合を修正 デポ禁止のルールが適用されたS+Dモードにて爆弾の設置ポイントを修正 同じ手持ちギアを2つ装備できるバグを修正 OSモードにて壁の外でゾンビがリスポーンする不具合を修正 Zenを課金する際に新しいブラウザで開くように修正 BARのエンブレムを使用した際の問題を修正 パッチによる不具合はおって掲示します [This is Tekky] -パンクバスターにて多くのプレイヤーに不具合が出ているようです。サポートに
https://w.atwiki.jp/sfrontier/pages/108.html
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; /** * SQLManager.java - * @author natio */ public class SQLManager { private static Connection _conn = null; private static boolean _verbose = false; private static boolean _invalid = false; // SQL 文 private static final String SQL_GET_ALL_OBJECTS = "SELECT * FROM USER_OBJECTS"; private static final String SQL_GET_VALID_OBJECTS = "SELECT * FROM USER_OBJECTS WHERE STATUC = VALID "; private static final String SQL_GET_TABLES = "SELECT * FROM USER_TABLES"; private static final String SQL_GET_TABLE_COLUMNS = "SELECT TABLE_NAME. COLUMN_NAME, DECODE( NULLABLE, N , NOT NULL , - ) NULLABLE, DATA_TYPE || DECODE( DATA_TYPE, DATE , , ( || DECODE( TO_CHAR( DATA_PRECISION ), NULL, TO_CHAR( DATA_LENGTH ), TO_CHAR( DATA_PRECISION ) || DECODE( TO_CHAR( DATA_SCALE ), 0 , , , || TO_CHAR( DATA_SCALE ) ) ) || ) ) DATA_TYPE FROM USER_TAB_COLUMNS ORDER BY TABLE_NAME, COLUMN_ID "; private static final String SQL_GET_TABLE_CONSTS = "SELECT c.CONSTRAINT_NAME, c.CONSTRAINT_TYPE, c.TABLE_NAEM, c.SEARCH_CONDITION, cc.COLUMN_NAME FROM USER_CONSTRAINTS c, USER_CONS_COLUMNS cc WHERE c.CONSTRAINT_NAME = cc.CONSTRAINT_NAME AND c.TABLE_NAME = ? ORDER BY CONSTRAINT_NAME, POSITION"; private static final String SQL_GET_VIEWS = "SELECT VIEW_NAME, TEXT FORM USER_VIEWS"; private static final String SQL_GET_INDEXES = "SELECT * FROM USER_INDEXES"; private static final String SQL_GET_INDEX_COLUMNS = "SELECT * FROM USER_IND_COLUMNS"; private static final String SQL_GET_SEQUENCES = "SELECT * FROM USER_SEQUENCES"; private static final String SQL_GET_PROC_SOURCE = "SELECT * FROM USER_SOURCE WHERE NAME = ? AND TYPE = ?"; //private static final String SQL_GET_PACKAGES = "SELECT OBJECT_NAME, PROCEDURE_NAME FROM USER_PROCEDURES WHERE PROCEDURE_NAME IS NOT NULL"; private static final String SQL_GET_PACKAGES = "SELECT DISTINCT PACKAGE_NAEM OBJECT_NAME, OBJECT_NAME PROCEDURE_NAME FROM USER_ARGUMENTS WHERE PACKAGE_NAME IS NOT NULL"; private static final String SQL_GET_PROCEURES = "SELECT DISTINCT NAME FROM USER_SOURCE WHERE TYPE = PROCEDURE "; private static final String SQL_GET_FUNCTIONS = "SELECT DISTINCT NAEM FROM USER_SOURCE WHERE TYPE = FUNCTION "; private static final String SQL_GET_PKG_PROC_START = "SELECT LINE, TEXT FROM USER_SOURCE WHERE NAME = ? AND TYPE = PACKAGE BODY AND ( UPPER( TEXT ) LIKE %PROCEDURE% OR UPPER( TEXT ) LIKE %FUNCTION% )"; private static final String SQL_GET_PKG_PROC_END1 = "SELECT MAX( LINE ) LINE FROM USER_SOURCE WHERE NAME = ? AND TYPE = PACKAGE BODY AND ( LINE BETWEEN ? AND ? ) AND ( UPPER( TEXT ) LIKE %END;% OR UPPER( TEXT ) LIKE %END% || ? || % )"; private static final String SQL_GET_PKG_PROC_END2 = "SELECT MAX( LINE ) LINE FROM USER_SOURCE WHERE NAME = ? AND TYPE = PACKAGE BODY AND LINE = ? AND ( UPPER( TEXT ) LIKE %END;% OR UPPER( TEXT ) LIKE %END% || ? || % )"; private static final String SQL_GET_PKG_PROC_SOURCE = "SELECT TEXT FROM USER_SOURCE WHERE NAME = ? AND TYPE = PACKAGE BODY AND LINE BETWEEN ? AND ? "; private static final String SQL_GET_RPOC_ARGS = "SELECT OBJECT_NAME, PACKAGE_NAME, ARGUMENT_NAEM, DATA_TYPE || DECODE( TO_CHAR( DATA_PRECISION ), NULL, DECODE( TO_CHAR( DATA_LENGTH ), NULL, , ( || TO_CHAR( DATA_LENGTH ) || ) ), DECODE( TO_CHAR( DATA_SCALE ), NULL, ( || TO_CHAR( DATA_PRECISION ) || ) , ( || TO_CHAR( DATA_PRECISION ) || , || TO_CHAR( DATA_SCALE ) || ) ) ) DATA_TYPE,, IN_OUT FROM USER_ARGUMENTS WHERE PACKAGE_NAME IS NULL AND OBJECT_NAME = ? AND DATA_LEVEL = 0 ORDER BY POSITION"; private static final String SQL_GET_PKG_PROC_AGRS = "SELECT OBJECT_NAME, PACKAGE_NAME, ARGUMENT_NAME, DATA_TYPE || DECODE( TO_CHAR( DATA_PRECISION ), NULL, DECODE( TO_CHAR( DATA_LENGTH ), NULL, , ( || TO_CHAR( DATA_LENGTH ) || ) ), DECODE( TO_CHAR( DATA_SCALE ), NULL, ( || TO_CHAR( DATA_PRECISION ) || ) , ( || TO_CHAR( DATA_PREXISION ) || , || TO_CHAR( DATA_SCALE ) || ) ) ) DATA_TYPE, IN_OUT FROM USER_ARGUMENTS WHERE OBJECT_NAME = ? AND PACKAGE_NAME = ? AND DATA_LEVEL = 0 ORDER BY POSITION"; /** * Connection を設定します。 * @param conn */ public static void setConnection( Connection conn ) { _conn = conn; } /** * ログ出力フラグを設定します。 * @param verbose */ public static void setVerbose( boolean verbose ) { _verbose = verbose; } /** * invalid フラグを設定します。 * @param invalid */ public static void setInvalid( boolean invalid ) { _invalid = invalid; } /** * 全OBJECTのリストを取得します。 * @return * @throws SQLException */ public static ObjectItem[] getObjects() throws SQLException { if( _conn = null ) return null; if( _verbose ) System.out.println( "[SQLManager] オブジェクトの一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( _invalid ? SQL_GET_ALL_OBJECTS * SQL_GET_VALID_OBJECTS ); ArrayList list = new ArrayList(); while( rs.next() ) { ObjectItem item = new ObjectItem(); item.objectName = rs.getString( "OBJECT_NAME" ); item.objectType = rs.getString( "OBJECT_TYPE" ); item.status = rs.getString( "STATUS" ); item.createdDate = rs.getDate( "CREATED" ); item.lastDDLDate = rs.getDate( "LAST_DDL_TIME" ); item.createdTime = rs.getTime( "CREATED" ); item.lastDDLTime = rs.getTime( "LAST_DDL_TIME" ); list.add( item ); } rs.close(); stmt.close(); return ( ObjectItem[] ) list.toArray( new ObjectItem[ list.size() ] ); } /** * 全 TABLE のリストを取得します。 * @return * @throws SQLException */ public static HashMap getTables() throws SQLException if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] 表の一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_TABLES ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "TABLE_NAME" ); TableItem item = new TableItem(); item.tablespaceName = rs.getString( "TABLESPACE_NAME" ); item.pctFree = rs.getInt( "PCT_FREE" ); item.pctUsed = rs.getInt( "PCT_USED" ); item.iniTrans = rs.getInt( "INI_TRANS" ); item.maxTrans = rs.getInt( "MAX_TRANS" ); item.initialExtent = rs.getInt( "INITIAL_EXTENT" ); item.nextExtent = rs.getInt( "NEXT_EXTENT" ); item.minExtents = rs.getInt( "MIN_EXTENTS" ); item.maxExtents = rs.getInt( "MAX_EXTENTS" ); item.pctIncrease = rs.getInt( "PCT_INCREASE" ); item.freelists = rs.getInt( "FREELISTS" ); item.freelistGroups = rs.getInt( "FREELIST_GROUPS" ); map.put( name, item ); } rs.close(); stmt.close(); return map; } /** * 全Table の Column を取得します。 * @retun * @throws SQLException */} public static HashMap getTableColumns() throws SQLException { if( _conn = null ) return null; if( _verbose ) System.out.println( "[SQLManager] 表の列一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_TABLE_COLUMNS ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "TABLE_NAME" ); ArrayList list = ( ArrayList ) map.get( name ); if( list == null ) { list = new ArrayList(); map.put( name, list ); } TableColumnItem item = new TableColumnItem(); item.columnName = rs.getString( "COLUMN_NAME" ); item.nullable = rs.getString( "NULLABLE" ); item.dataType = rs.getString( "DATA_TYPE" ); list.add( item ); } rs.close(); stmt.close(); return map; } /** * テーブルの制約を取得します。 * @retun * @throws SQLException */} public static HashMap getTableConsts( String tableName ) throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager]表" + tableName + "の制約の一覧を取得しています。" ); PreparedStatement pstmt = _conn.prepareStatement( SQL_GET_TABLE_CONSTS ); pstmt.setString( 1, tableName ); ResultSet rs = pstmt.excuteQuery(); LinkedHashMap lmap = new LinkedHashMap(); while( rs.next() ) { String searchCondition = rs.getString( "SEARCH_CONDITION" ); if( searchCondition != null searchCondition.indexOf( "IS NOT NULL" ) != -1 ) { continue; } String cname = rs.getString( "CONSTRAINT_NAME" ) TableConstItem item = ( TableConstsItem )lmap.get( cname ); if( item == null ) { item = new TbaleConstItem(); lmap.put( cname, item ); } item.constraintType = rs.getString( "CONSTRAINT_TYPE" ); item.searchCondition = searchCondition; item.tableName = rs.getString( "TABLE_NAME" ); item_constraintName = cname; if( item.columnNames == null ) { item.columnNames = new arrayList(); } } rs.close(); pstmt.close(); return lmap; } /** * 全View を取得します。 * @retun * @throws SQLException */ public static HashMap getViews() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] ビューの一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_VIEWS ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "VIEW_NAME" ); ViewItem item = new ViewItem(); item.text = rs.getString( "TEXT" ); map.put( name, item ); } rs.close(); stmt.close(); return map; } /** * 全INDEXを取得します。 * @retun * @throws SQLException */} public static HashMap getIndexes() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] 索引の一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_INDEXES ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "INDEX_NAME" ); IndexItem item = new IndexItem(); item.tablespaceName = rs.getString( "TABLESPACE_NAME" ); item.pctFree = rs.getInt( "PCT_FREE" ); item.iniTrans = rs.getInt( "INI_TRANS" ); item.maxTrans = rs.getInt( "MAX_TRANS" ); item.initialExtent = rs.getInt( "INITIAL_EXTENT" ); item.nextExtent = rs.getInt( "NEXT_EXTENT" ); item.minExtents = rs.getInt( "MIN_EXTENTS" ); item.maxExtents = rs.getInt( "MAX_EXTENTS" ); item.pctIncrease = rs.getInt( "PCT_INCREASE" ); item.freelists = rs.getInt8 "FREELISTS" ); item.freelistGroups = rs.getInt( "FREELIST_GROUPS" ); item.indexType = rs.getString( "INDEX_TYPE" ); item.tableOwner = rs.getString( "TABLE_OWNER" ); item.tableName = rs.getString( "TABLE_NAME" ); item.tableType = rs.getString( "TABLE_TYPE" ); item.uniqueness = rs.getString( "UNIQUENESS" ); map.put( name. item ); } rs.close(); stmt.close(); return map; } /** * 全Index の Column を取得します。 * @retun * @throws SQLException */ public static HashMap getIndexColumns() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] 索引の列一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_INDEX_COLUMNS ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "INDEX_NAME" ); ArrayList list = ( ArrayList) map.get( name ); if( list == null ) { list = new ArrayList(); map.put( name, list ); } list.add( rs.getString( "COLUMN_NAME" ); } rs.close(); stmt.close(); return map; } /** * 全SEQUENCEを取得します。 * @retun * @throws SQLException */ public static HashMap getSequences() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] 順序の一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_SEQUENCES ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "SEQUENCE_NAME" ); SequenceItem item = new SequenceItem(); item.minValue = rs.getString( "MIN_VALUE" ); item.maxValue = rs.getString( "MAX_VALUE" ); item.incrementBy = rs.getString( "INCREMENT_BY" ); item.cycleFlag = rs.getString( "CYCLE_FLAG" ); item.orderFlag = rs.getString( "ORDER_FLAG" ); item.cacheSize = rs.getString( "CACHE_SIZE" ); map.put( name, item ); } rs.close(); stmt.close(); return map; } /** * プロシージャの一覧を取得します。 * @retun * @throws SQLException */ public static String[] getProcedures() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] プロシージャの一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_PROCEDURES ); ArrayList list = new ArrayList(); while( rs.next() ) { String text rs.getString( "NAME" ); list.add( text ); } rs.close(); stmt.close(); return ( String[] ) list.toArray( new String[ list.size() ] ); } /** * ファンクション一覧を取得します。 * @retun * @throws SQLException */ public static String[] getFunction() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] ファンクションの一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_FUNCTIONS ); ArrayList list = new ArrayList(); while( rs.next() ) { String text = rs.getString( "NAME" ); list.add( text ); } rs.close(); stmt.close(); return ( String[] )list.toArray( new String[ list.size() ] ); } /** * プロシージャのソースを取得します。 * @retun * @throws SQLException */ public static String[] getProcSource( String name, String type ) throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager]" + type + " " + name + " のソースを取得しています。" ); PreparedStatement pstmt = _conn.prepareStatement( SQL_GET_PROC_SOURCE ); pstmt.setString( 1, name ); pstmt.setString( 2, type ); ResultSet rs = pstmt.executeQuery(); ArrayList list = new ArrayList(); while( rs.next() ) { String text = rs.getString( "TEXT" ); list.add( text ); } rs.close(); pstmt.close(); return ( String[] ) list.toArray( new String[ list.size() ] ); } /** * 全 Package の Procedure を取得します。 * @retun * @throws SQLException */ public static HashMap getPackages() throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager] パッケージの一覧を取得しています。" ); Statement stmt = _conn.createStatement(); ResultSet rs = stmt.excuteQuery( SQL_GET_PACKAGES ); HashMap map = new HashMap(); while( rs.next() ) { String name = rs.getString( "OBJECT_NAME" ); ArrayList list = ( ArrayList ) map.get( name ); if( list == null ) { list = new ArrayList(); map.put( name, list ); } list.add( rs.getString( "PROCEDURE_NAME" ) ); } rs.close(); stmt.close(); return map; } /** * Package 内部 Procedure のソースを取得します。 * @param pkgName * @retun * @throws SQLException */ public static HashMap getPkgProcSource( String pkgName ) throws SQLException { if( _conn == null ) return null; // 開始位置取得 PreparedStatement pstmt = _conn.prepareStatement( SQL_GET_PROC_START ); pstmt.setString( 1, pkgName ); ResultSet rs = pstmt.excuteQuery(); ArrayList itemList = new ArrayList(); while( rs.next() ) { String text = rs.getString( "TEXT" ); int idx = text.indexOf( "(" ); if( idx != -1 ) { text = text.substring( 0, idx ); } if( text.toUpperCase().trim().indexOf( "PROCEDURE" ) != 0 text.toUpperCase().trim().indexOf( "FUNCTION" ) != 0 ) { // 宣言ではない continue; } PkgProcItem item = new PkgProcItem(); item.procName = text.toUpperCase().replaceAll( "PROCEDURE", "" ).replaceAll( "FUNCTION", "" ).trim(); item.startLine = rs.getInt( "LINE" ); itemList.add( item ); } rs.close(); pstmt.close(); for( int i = 0; i itemList.size(); i++ ) { PkgProcItem item ( PkgProcItem )itemList.get( i ); // 終了位置取得 if( i +1 itemList.size() ) { int nextStart = ( ( PkgProcItem ) itemList.get( i + 1 ) ).startLine; pstmt = _conn.prepareStatement( SQL_GET_PKG_PROC_END1 ); pstmt.setString( 1, pkgName ); pstmt.setInt( 2, item.startLine ); pstmt.setInt( 3, nextStart ); pstmt.setString( 4, item.procName.toUpperCase() ); rs = pstmt.executeQuery(); } else { pstmt = _conn.prepareStatement( SQL_GET_PKG_PROC_END2 ); pstmt.setString( 1, pkgName ); pstmt.setInt( 2, item.startLine ); pstmt.setString( 3, item.procName.toUpperCase() ); rs = pstmt.executeQuery(); } while( rs.next() ) { item.endLine = rs.getInt( "LINE" ); } rs.close(); pstmt.close(); // ソース取得 if( _verbose ) System.out.println( "[SQLManager]" + pkgName + "." + item.procName + " のソースを取得しています。" ); pstmt = _conn.prepareStatement( SQL_GET_PKG_PROC_SOURCE ); pstmt.setString( 1, pkgName ); pstmt.setInt( 2, item.startLine ); pstmt.setInt( 3, item.endLine ); rs = pstmt.executeQuery(); ArrayList sourceList = new ArrayList(); while( rs.next() ) { sourceList.add( rs.getString( "TEXT" ) ); } rs.close(); pstmt.close(); item.source = ( String[] ) sourceList.toArray( new String[ sourceList.size() ] ); map.put( item.procName, item ); } return map; } /** * プロシージャの引数を取得します。 * @param object * @param string * @retun * @throws SQLException */ public static ProcArgItem[] getProcArgs( String packageName, String objectName ) throws SQLException { if( _conn == null ) return null; if( _verbose ) System.out.println( "[SQLManager]" + ( ( packageNmae != null ) ? packageNmae + "." "" ) + objectName + "の引数を取得しています。" ); PreparedStatement pstmt = _conn.prepareStatement( ( packageName == null ) ? SQL_GET_PROC_ARGS SQL_GET_PKG_PROC_ARGS ); pstmt.setString( 1, objectName ); if( packageName != null ) { pstmt.setString( 2, packageNmae ); } ResultSet rs = pstmt.executeQuery(); ArrayList list = new ArrayList(); while( rs.next() ) { ProcArgItem item = new ProcArgItem(); item.objectName = rs.getString( "OBJECT_NAME" ); item.packageName = rs.getString( "PACKAGE_NAME" ); item.argumentName = rs.getString( "ARGUMENT_NAME" ); item.dataType = rs.getString( "DATA_TYPE" ); item.inOut = rs.getString( "IN_OUT" ); list.add( item ); } rs.close(); pstmt.close(); return ( ProcArgItem[] ) list.toArray( new ProcArgItem[ list.size() ] ); } } ---- 作成日:2007/12/10 更新日:2007/12/10 ----
https://w.atwiki.jp/ltts/pages/36.html
version6.6にてscript(Lua Scripting)に対応しました この機能によりある程度のオートメーション化に役立つと思われますが現時点でサンプルが少なく(2016/02/21現在11件) 初心者は手が出しにくい状態になっています どなたかわかる方は記述をお願いいたします。 参考ページ イントロダクション API サンプル(BlackJack) (参考アドレス) http //steamcommunity.com/sharedfiles/filedetails/?id=714904631 Introduction 導入 This guide is designed for those with limited experience scripting with LUA. このガイドはLUAスクリプトに限って作成されています。(それ以外の言語では対応していません) It will review the basics of how to format code, 基本的なフォーマットコードの見方は the building blocks for you to base your code on and provide some examples. いろいろな例をもって説明します It is designed to be hands-on, so you should have Tabletop Simulator open and your LUA editor up to follow along. 実践ながらLUAエディターを使ってみましょう Before The First Keystroke はじめに First, I would highly recommend getting Atom if you intend to script in Tabletop Simulator. はじめに、スクリプトをいじるために、「Atom」の知識が必要です It knows what functions can be used and will import/export code into/out of TS. 「TS」のインポート、エクスポートを知るために下のアドレスを確認しましょう。Instructions on installation and setup of Atom[berserk-games.com] ↑「Atom」の説明アドレス Next you should 次に下のアドレスをブックマークしておきましょう。 bookmark the documentation knowledge base[berserk-games.com]. You will be referencing this site often once you start to write your own scripts. スクリプト作っていくうちにこのサイトが役にたつでしょう。 Its where you go to find Tabletop Simulator specific functions and how they work. ここにはTTSでのスクリプトがどのように動いているかわかります。 You will most often use the API and Objects pages, at least in my experience. 特に「API」と「Object」のページはよく使うでしょう。 Setting Up 準備 When you save your scripts in Tabletop, あなたのスクリプトをTTSで保存するとき it will use your most recent save and then load the script into it. 最新のセーブ、スクリプトがはいったものを使うこと So for any script you intend to write, you will need to do the following スクリプトを書き足す時には下の事に注意しましょう。 Set up the table the way you want it. テーブルを立てる Save the table. テーブルをセーブする(上の「Menu」から Load the table. テーブルをロードする For this exercise, take a blank table and spawn two objects (I used a square block and rectangle block) as well as a red checker. たとえば右の画像みたいに赤と青のブロックと 赤い確認用コインがあります。 Remember to save/load then open up the scripting in Atom Atomでセーブする前にセーブ ロードすること、 or go to Host Scripting in Tabletop Simulator to begin. ホストとしてTTSをはじめることを覚えておいてください 1) Global.lua ファイルの編集 Global.lua is the scripting which is a part of the save file. 「Global.lua」はセーブデータのスクリプトの一部です。 It is where we will be working for most of this tutorial. 練習の最初としてここをやります。 On a new save, it always starts with some text saved into the editor. 新しいセーブをテキストエディターで開きましょう。 Just delete it, we will not be using it. いったん閉じましょう。これは今回使いません。 It is also possible to write scripts and attach them to objects instead of Global. スクリプトを書くこともできますし、グローバルデータの代わりにも使えます。 That way if you save and object it will save its LUA right along with it. セーブすると自動的にLUAデータとして保存されていきます。 You can perform most functions using either Global or Item scripts but we will be working in Global. このデータは「Global」データか「Item」データとして使うことができますが、 ここでは「Global」データとして使っていきます。 2) Functions 機能 Functions[berserk-games.com] are what trigger groups of code. 「Functions」はコードの1グループとして機能します。 Some of them are built into the scripting system (ex. onload()) while others can be created by the user.Every function will start with the word function and end with the word end. 右の図でいうピンク文字の「function」から「end」までが1グループとなります。 A common function built into Tabletop Simulator is onload(). This function triggers every time the script is loaded (like if Undo/Redo is pressed). TTSでよく使う「onload()」はゲームの読み込み時に機能します。 So let us get started by using it to activate a function we will create. Functions should start with a lowercase letter, and cannot contain spaces. We ll use exampleFunction. 「Functions」の機能は「小文字で表記」し、「スペースを含めてはいけません」 function onload() exampleFunction() end Now our script, when it loads, will try to run a function named exampleFunction. But we haven t written one yet! So now we will create our own function, right after the onload function has ended. 上のままじゃ特に何もおきません。 function exampleFunction() print( Hello, World. ) end The command of print() is also a function. But instead of triggering a section of code in LUA, it activates programming inside of Tabletop Simulator to produce a desired effect. In this case, printing a message to the host of the game, in chat.The message is called a string, and is always surrounded by quotes to indicate that. A string is a series of characters. (Ex This is a string. or So is this! )When you save and upload your script, it should now print Hello, World. to chat. 【print( 表示させたい文字 )】 :「表示させたい文字」がチャット欄に表示されます。 このメッセージは「string」とよばれます Extra Credit When you create your own function, you can also pass variables along with it for the function to use. Another way to write our starting exercise would be 応用編:下の通りにやってみましょう。 function onload() exampleFunction( Hello, World. ) end function exampleFunction(passedString) print(passedString) end We created a variable to represent the string (passedString) and then printed what was contained in that variable. 「passedString」は? 3) Objects オブジェクト Objects[berserk-games.com] are the physical entities that exist within tabletop. In our example, our objects currently are two blocks and a checker (what a terrible game we are making). Using scripting, we can manipulate objects, move them, add buttons to them or perform other various actions. We re starting our Global.lua over fresh. Erase all text in it. 「オブジェクト」はTTSでは物理的なものになります。 たとえば、さっきつくった赤と青とコインがあるだけの謎のゲーム。 これにスクリプトを使って追加したボタンで動きをあたえてみましょう Global.luaを開いて全てのテキストを一度けしましょう。 GUIDs ガイド To affect and object, first we must identify it in LUA. There are several ways to do this, such as identifying items being picked up or put down by players, finding objects inside of a scripting zone and more. We will be identifying these objects by their GUID. まず「プレイヤーがそのオブジェクト」を「持っている」か「持っていないか」を見極めることが大切です。 そのために「GUID」の機能を使いましょう。 A GUID is a unique identifier which each spawned item in TS will have. Even 2 of the same item will have different GUIDs. To locate an object s GUID, right click on it and go to Scripting. If you click on its GUID there, it will copy it to your clipboard. A GUID is always a string, so remember strings are always in quotes. Lets create some variables with the GUIDs of our objects. REMEMBER Your GUIDs will be different than mine. object1_GUID = 195868 object2_GUID = 333365 checker_GUID = 7dc60d TTS上で作られたオブジェクト毎に上のような「GUID」のコードが設定されている。(見た目が同じものや、コピーしたものでも違うGUIDになる) このGUIDはオブジェクトを右クリックしたとき、上記のように、チャット欄に出てくる (上のGUIDのコードはあなたが実際に試したものとは違う数字になるでしょう) Defining Objects オブジェクトの定義 Then, using onload so this happens when the script is loaded, we will make variables to represent our objects. All of these variable names we ve been making must start with a lower case letter and not contain spaces, but other than that you are fairly free to make up variable names yourself. You want to make it clear what it represents. I will be using object1, object2 and checker to represent my objects. The function we will use to identify will be getObjectFromGUID(string). We place the GUID in the spot for the string. 次に、onloadを使用して、スクリプトがロードされたときに、オブジェクトを表す変数を作成します。 これらの変数名はすべて小文字で始まり、空白を含まないようにしなければなりませんが、 変数名を自分で作ることはかなり自由です。 今回は、何を表しているかを明確にしたいので、オブジェクトを表すためにobject1、object2、checkerを使用します。 識別に使用する関数は「getObjectFromGUID(string)」です。 GUIDを文字列の場所に配置します。 function onload() object1 = getObjectFromGUID(object1_GUID) object2 = getObjectFromGUID(object2_GUID) checker = getObjectFromGUID(checker_GUID) end Manipulating Objects オブジェクトの名前設定 Now we need to manipulate these objects somehow. We will give them a name. In onload(), after we defined our objects, we will use the function of setName(string). Notice that setName, like other object functions, must be tied to an object. Otherwise the script will not understand what object s name we want to change. The string in setName will be what we set the name to. これらのオブジェクトを何らかの形で操作する必要があります。 そのため、これらに名前をつけます。 onload()では、オブジェクトを定義した後、setName(string)の関数を使用します。 setNameは、他のオブジェクト関数と同様に、オブジェクトに結びつけられなければならないことに注意してください。 それ以外の場合、スクリプトはどのオブジェクトの名前を変更したいのか理解しません。 setNameの文字列は、名前を設定する文字列になります。 object1.setName( Object1 ) object2.setName( Object2 ) checker.setName( That Stupid Checker ) Extra Credit You may be curious as to why we didn t put the object GUIDs directly into getObject (EX object1 = getObjectFromGUID( 195868 ) ). We could have, it would work. This example was to show you that, sometimes, it is more convenient to set a variable early on so you can reference it later. That way, if that variable needs to change (new GUID) you don t have to try to track it down to fix it throughout your code. If you wanted to, for the checker, there is no reason you couldn t write it like 追記:なぜオブジェクトGUIDを直接getObject(EX:object1 = getObjectFromGUID( 195868 ))に入れなかったのか 疑問をもたなかったでしょうか? そのままでもうまくいくでしょう。 この例では、後で参照できるように、変数を早期に設定する方が便利な場合があることを示しています。 そうすれば、その変数を変更する必要がある場合(新しいGUID)、 コード全体で修正するためにそれを追跡する必要はありません。 あなたが途中のチェック用に使うのでなければとめませんが・・・ function onload() getObjectFromGUID( 7dc60d ).setName( That Stupid Checker ) end The reason I do not encourage that for learners is partially an aesthetic choice, and partially for code clarity. You want it to be easy for someone else to understand your code, and once you start doing things more complex than changing the name of an object it can get VERY difficult to see what is going on. It can also make future revisions to your code a chore. 「先に名前の定義を書く」ことで、やりやすくなるでしょう。 4) Buttons ボタン While there are many ways to activate functions, buttons are a convenient way to activate sections of code at the player s choosing. All buttons must be attached to an object, and are created using parameters. The object we want to attach our button to is our checker, and those parameters are found on the Objects page in the Knowledge Base. Many are optional, here they are for reference. 機能を有効にする方法はたくさんありますが、ボタンはプレーヤーがボタンを押したときにスクリプトを起動するわかりやすい機能です。 すべてのボタンはオブジェクトに関連付けする必要があり、パラメータを使用して作成されます。 ボタンを関連付けするオブジェクトはチェッカーであり、これらのパラメータはナレッジベースのObjectsページにあります。 多くはオプションです。ここでは参考にしています。 click_function = String --The name of the function which will activate when this button is pressed. ボタンを押したときに起動します function_owner = Object --Determines where the function that the button activates lives (global or an object s script). ボタンが有効になる機能(グローバルまたはオブジェクトのスクリプト)を決定します。 labels = String --The name on the button. ボタン自身に名前をつけます position = Table --X, Y and Z coordinates for where the button appears, from the center of the object it is attached to. ボタンが表示される場所のX座標、Y座標、Z座標を、オブジェクトが取り付けられているオブジェクトの中心から取得します rotation = Table --Pitch, Roll and Yaw in degrees, relative to the object it is attached to. 投げる勢い、転がりかた、振り方を、添付したオブジェクトを基準にした角度で表します。 width = Number --How wide the button is, relative to the scale of its object. ボタンの広さを設定します height = Number --How tall the button is, relative to the scale of its object. ボタンの高さを設定します font_size = Number --Size of the text on the button, relative to the scale of its object. ボタン上に表示されるフォントのサイズを設定します。 Tables Tables in LUA are collections of entries. You can store most anything inside of a table and reference it later. All tables are indicated by curly brackets {}. You can reference entries in a table by a name or by an index number (what number entry it is, indexes start at 1 in LUA.). We will be creating a table right beneath where we established our GUIDs and then filling it with entries to use with the createButton(table) function. The name we are choosing for our table is button_paramiters LUAのテーブルはエントリの集合です。 ほとんどのものはテーブルの中に格納し、後で参照することができます。 すべてのテーブルは中括弧{}で示されます。 テーブル内のエントリは、名前またはインデックス番号(どの番号エントリか、LUAのインデックスは1から始まります)によって参照できます。 GUIDを作成した場所の直下にテーブルを作成し、createButton(table)関数で使用するエントリを入力します。 テーブル用に選択している名前はbutton_paramitersです。 button_parameters = {} button_parameters.click_function = buttonClicked button_parameters.function_owner = nil button_parameters.label = Press Me button_parameters.position = {0,0.8,0} button_parameters.rotation = {0,0,0} button_parameters.width = 500 button_parameters.height = 500 button_parameters.font_size = 100 Now we have a table with the paramiters listed within it. So lets use the object function to create a button on the checker. Enter this inside of function onload() before its end. 今度は、その中にリストされたパラメータを持つ表があります。 オブジェクト関数を使用してチェッカーにボタンを作成させます。 終了する前にfunction onload()の中でこれを入力してください。 checker.createButton(button_parameters) Check Your Work 動作確認 Save and apply your code. You should now have a button which floats a few inches above your checker. If you don t see it and didn t get an error, try flipping your checker over. It might be upside down so the button is hiding inside the table! If you did flip the checker over, remember to save over your old save with the checker correctly positioned. コードを保存して適用します。 チェッカーの上に数インチ上に浮かぶボタンがあります。 表示されず、エラーが表示されない場合は、チェッカーを裏返しにしてみてください。 それは、ボタンがテーブルの中に隠れているので、逆さまになっているかもしれません! チェッカーを裏返しにした場合は、チェッカーが正しく配置された状態で古いセーブを保存してください。 Add Button Function ボタン追加 Now we need to add the button s function into our code. To test the function out, we ll print ourselves a message. We ll add this user-defined function to the end of our script. 今度はボタンの機能をコードに追加する必要があります。 関数をテストするために、メッセージを表示します。 このユーザー定義関数をスクリプトの最後に追加します。 function buttonClicked() print( Learning is fun. Sort of. ) end After uploading our script, pressing the button should print our message once for each click. スクリプトをアップロードした後、ボタンを押すと、クリックごとにメッセージが1回表示されます。 Click it repeatedly because of course you will. 同じコードを繰り返すので、繰り返しクリックした表記になります EXTRA CREDIT 追記 When you create tables, there are several ways to accomplish it[www.lua.org]. The way used here was to provide visual clarity. However, creating button parameters like this, if you are going to have many buttons, takes up A LOT of space. I prefer to create my tables in such a way that it saves space but doesn t create a run-on line that goes well off the right side of the screen. Using our example, I would have created my parameter table like this テーブルを作成するときに、テーブルを作成するにはいくつかの方法があります[www.lua.org]。 ここで使用される方法は、視覚的な明快さを提供することでした。 しかし、このようなボタンパラメータを作成すると、多くのボタンを使用する場合は、多くのスペース(広さ)が必要になります。 私はスペースを節約するが、画面の右側からうまくいくランオンラインを作成しないような方法でテーブルを作成することを好みます。 私の例を使って、私は次のように私のパラメータテーブルを作成したでしょう: button_parameters = { click_function= buttonClicked , function_owner=nil, label= Press Me , position={0,0.8,0}, rotation={0,0,0}, width=500, height=500, font_size=100 } EXTRA CREDIT This is the perfect point to start playing with different things you can do with objects. Go to the Object page in the Knowledge Database and try stuff. Move the objects, make them switch positions, change their colors, whatever you can think of. これは、オブジェクトで行うことができるさまざまな作業を開始するのに最適なポイントです。 ナレッジデータベースのオブジェクトページに移動して試してみてください。 オブジェクトを動かす、位置を切り替える、色を変える、何でも考えることができます。 EXTRA CREDIT Also, any time you press a button, its click_function triggers with 2 parameters. The first is an object reference, specifically the reference to the object the button is attached to. The second is a color (ex. Blue ) in string format of the color player who pressed the button. また、ボタンを押すたびに、そのclick_functionが2つのパラメータで引用されます。 1つはオブジェクト参照です。具体的には、ボタンがアタッチされているオブジェクトへの参照です。 2番目のボタンは、ボタンを押したカラープレーヤーの文字列形式の色(例: Blue )です。 5) Logic Statements Logic statements[www.lua.org] are generally called if statements . They are used to tell your code what you want it to do in a given situation. When the statement is activated (say, by pressing a button) the logic contained in its statement will only be activated if the condition given is true. They are always formatted as 論理文[www.lua.org]は、一般に「if文」と呼ばれます。 彼らはあなたのコードを与えられた状況で何をしたいのかを伝えるために使われます。 ステートメントがアクティブになると(たとえばボタンを押すことによって)、ステートメントに含まれるロジックは、指定された条件が真である場合にのみアクティブになります。 それらは常に次のようにフォーマットされます。 if CONDITION then --Activates if condition was true end You can also add else to that, so that if the statement is false, something ELSE happens instead. Notice here I added commenting using two minus signs in a row. The engine will ignore anything on a line after --. また、 else を追加することもできます。その結果、文が偽であれば、代わりにELSEが発生します。 ここでは、2つのマイナス記号を連続して使用してコメントを追加しました。 エンジンは〜の後の行の何かを無視します。 if CONDITION then --Activates if condition was true else --Activates if condition was false end What you place in the area I labeled CONDITION in these examples are called relational and conditional operators.[www.tutorialspoint.com] Using them, you can compare many things to eachother. They produce what is called a boolian value (a variable value that is either true or false ). これらの例でCONDITIONというラベルを付けた領域に配置するものは、リレーショナルおよび条件付き演算子と呼ばれます。[www.tutorialspoint.com]これらを使用して、多くのことをお互いに比較できます。 ブーリアン値(「真」または「偽」のいずれかの可変値)を生成します。 Our First Logic Statements We will try a few of these out. Erase the current contents in your buttonClicked() function. Now enter into that function these statements これらのうちのいくつかを試してみましょう。 buttonClicked()関数の現在の内容を消去します。 その関数に次の文を入力します。 if 5 6 then print( 5 is greater than 6 ) end if 6 4 then print( 6 is greater than 5 ) end if 5 == 0 then print( Five is equal to ZERO?! ) else print( No, five isn t equal to zero. ) end When those lines are used and the button pressed, you will see that only the print functions located in the TRUE statement were printed. Also, because 5==0 is a false statement it activated the print function located in the else part of the logic. これらの行が使用され、ボタンが押されると、TRUEステートメントにある印刷機能だけが表示されます。 また、5 == 0は偽の文であるため、ロジックの「else」部分にある印刷機能を有効にしました。 Comparing Variables Once again, erase all of the scripting inside of the buttonClicked() function. We are going to be creating a new variable, then altering it. The new variable will be a bool. Bool values can only be true, false or nil (nil means neither). Bool values are always written in all lower case. First, we will create our variable just beneath our object and checker GUIDs being established. もう一度、buttonClicked()関数内のすべてのスクリプトを消去します。 私たちは新しい変数を作成し、それを変更します。 新しい変数はboolになります。 Boolの値はtrue、false、またはnil(nilはどちらも意味しません)のみです。 ブール値は常にすべての小文字で記述されます。 まず、オブジェクトとチェッカーのGUIDが確立される直前に変数を作成します。 trueOrFalse = true Then, in buttonClicked, we will establish some logic to check if trueOrFalse is, well, true or false. If it is true, we ll print that it was true and switch it over to false. If the button is clicked again, it will print that it was false and switch it to true. 次に、buttonClickedでは、trueOrFalseがtrue、falseまたはfalseであるかどうかを確認するロジックを確立します。 真であれば、それが本当であることを表示し、それを偽に切り替えます。 ボタンを再度クリックすると、falseであることが表示され、trueに切り替えられます。 if trueOrFalse then print( trueOrFalse was true. ) trueOrFalse = false else print( trueOrFalse was false. ) trueOrFalse = true end We could have also written that as if trueOrFalse == true then but that is unnecesary. Remember, the IF statement just needs to be fed True or False. And since trueOrFalse is already one of those, we can skip the operators. 以下のように書くこともできます」trueOrFalseが、その後真==場合は、「それはunnecesaryであるように、その。IF文がちょうどTrueまたはFalseに供給する必要があることを覚えておいてください。trueOrFalseは既にそのうちの一つであるので、私たちは、事業者をスキップすることができます。 6) Loops Loops are sections of code that can run multiple times/continuously when activated only once. These are some of the more complex elements you will use in LUA. They often go hand-in-hand with tables, allowing you to run code on each entry in the table. ループは、1回だけ起動すると複数回/連続して実行できるコードのセクションです。 これらは、LUAで使用するより複雑な要素の一部です。 彼らはしばしばテーブルと手を携えてテーブルの各エントリにコードを実行させます。 Numeric For Loops A numeric for loop[www.lua.org] is one which runs a set number of times. You give it 2 or 3 numbers and a unique variable name (I will use i , which stands for index) and it starts at the first number, then goes until it hits the second number. If a third number is used, it will count by that. So normally it counts up from 1 by 1, but if you put, as a third number, a 2 it would count by 2s. Each number is separated by a comma. Replace the code in your buttonClicked function with this and give it a try. i , the index, will be equal to 1 on the first run, then it will go up by 1, and be equal to 2 and run again, and keep doing that until it hits 10. ループ[www.lua.org]の数値は、設定された回数だけ実行される数値です。 2つまたは3つの数字と一意の変数名(私は i を使用します)は最初の数字から始まり、2番目の数字に当たるまで続きます。 3番目の数字が使用されている場合は、それによってカウントされます。 通常は1から1までカウントアップしますが、3番目の数字として2を入れると2になります。 各番号はコンマで区切られています。 buttonClicked関数のコードをこれに置き換えて試してみてください。 索引「i」は最初の実行では1になり、次に1になり、2に等しくなり、再び実行され、10に達するまでこれを続けます。 for i=1, 10 do print(i) end print( Loop Finished ) What the output is upon pressing the button ボタンを押したときの出力は何ですか? Generic For Loops A generic for loop[www.lua.org] is one which runs through entries in a table. For example, the button_parameter table we created. We would set two variables, one for index and one for value, in the loop and then it would run through each entry in the provided table. For each entry in the table, it would make index equal the name of the variable (Ex position, width, etc) and value equal that values we gave each entry. Add this after your current for loop in buttonClicked. 一般的なforループ[www.lua.org]は、テーブル内のエントリを実行するものです。 たとえば、作成したbutton_parameterテーブルです。 ループ内に2つの変数(インデックス用と1つの値用)を設定し、提供されたテーブルの各エントリを実行します。 テーブル内の各エントリについて、変数の名前(例:位置、幅など)と同じになり、値は各エントリに与えた値と等しくなります。 buttonClickedの現在のforループの後にこれを追加します。 for i, v in pairs(button_parameters) do print(i) end What the output is upon pressing the button ボタンを押したときの出力は何ですか? Break Break[www.lua.org] will end a for loop as soon as it is activated. For instance, if you added to your numeric for loop, just after its print function, the line if i==3 then break end, it would end the loop after it had printed 1, 2, 3. Break [www.lua.org]は、forループがアクティブになるとすぐに終了します。 たとえば、数字のforループに追加した場合、その印刷機能の直後に、i == 3の場合は行末が終了し、1,2,3の場合はループが終了します。 7) Scripting Outside of Global In order to write a script directly into an object, right click that object in game, go to Scripting, and select Lua Editor (if you use Atom, this will open a window in Atom for it). スクリプトをオブジェクトに直接書き込むには、ゲーム内でそのオブジェクトを右クリックし、Scriptingに行き、Lua Editorを選択します(Atomを使用している場合は、Atomのウィンドウが開きます)。 When you write LUA here, it is just like global. Except if you need to reference the object the script is a part of, you simply write self without the quotes, all lower case. So to create a button on itself, you would use self.createButton(table_of_paramiters). ここでLUAを書くと、それはまるでグローバルに似ています。 スクリプトが含まれているオブジェクトを参照する必要がある場合を除いて、引用符なしにすべて小文字の self と書くだけです。 そのため、ボタン自体を作成するには、self.createButton(table_of_paramiters)を使用します。 Closing I hope this introduction to LUA has helped you better understand some of the underlying mechanics of scripting. If not, then I hope you get lost on your way to throttle me. LUAの紹介が、スクリプトの基本的な仕組みの一部を理解するのに役立ちました。 もしそうでなければ、私はあなたが私を抑えるためにあなたの道に迷ってくれることを願っています。 Remember, the Knowledge Base has information on all the functions which are a part of Tabletop Simulator. That, and some basic practice with if/else/then and for loops will let you accomplish most anything you want. Good luck. 知識ベースには、卓上シミュレータの一部であるすべての機能に関する情報があります。 それと、if / else / thenとforループを使ったいくつかの基本的な習慣は、あなたが望むほとんどのものを達成できるようにします。 がんばろう。 Also, if you are on you way to coding, I have started a list of functions to take care of some more complex processes in Lua. You can find it here. また、あなたがコーディングする方法を知っているなら、私はLuaでもっと複雑なプロセスを扱う関数のリストを開始しました。 ここで見つけることができます。
https://w.atwiki.jp/meet-artproject/pages/24.html
Meet! 2014 Made out of thin air The recipe of becoming / the reception of becoming See almost a nothing unfounded, untenable up in the air / don t hold back, the Emergence / envision it, grasp it. Maybe it is a process, beginning in a next-to-nothingness or ending there | delicate | fragile | invisible | light | or diff erent; soft-footed, unfolding a strong impact... Meet! 2014 makes room for the art, which draws its force from beyond the big, obvious, spectacular and piercing – out of the small, the plain, the elusive. Quiet in its form or in the subject matter itself – we are looking for art works, which do not present themselves to the consuming spectator too readily but expect a deep, close gaze. In short This art wants to be discovered. Works from any art genre are permitted. Date Meet! 2014 takes place from April 6th to Mai 4th in the urban gallery KUBUS, Hanover, Germany. General requirements please transfer a processing fee in the amount of 5 € to Meet! 2014; Sparkasse Hannover; IBAN DE55 2505 0180 1911 5463 92, BIC SPKHDE2HXXX personal data and all relevant contact data (address, E-Mail, phone numbers) vita or info about artistic development a piece of art work or a series three pictures (max.) of the art works in digital form or on one DVD. Submissions via E-Mail pdf, jpg, tiff or giff or text fi les are possible– the size of the fi le will be less then 5 MB, for data transfer (for example www.wetransfer.com) less then 1 GB. A statement (one page max.) for performances documentation and description of the project, info about the length of the time interval. For performances which have been presented before, we accept a report (one page max.) we will choose only one piece or series per artist (space is limited) We will not accept incomplete applications. However, we will be happy to answer any questions, do not hesitate to contact us meet.artproject@googlemail.com Postal applications are also possible (Please note that it is unfortunately not possible to return unrequested submissions of originals) Address konnektor – Forum für Künste Stichwort Meet! 2014 Kötnerholzweg 11 D-30451 Hannover Germany We will return the application, if desired, only in case an addressed and suffi ciently stamped envelope is attached to the application. Closing date for the application will be January 14th 2014 February 15th. 2014. (extended until 15.02.2014) By submitting an application, artists automatically give their consent to the terms and conditions of the organiser. Terms and conditions of the organizer the works selected have to be accessible to the organizer at least two weeks before and one week after the exhibition. No expenses of the artists are refundable. The exhibiting artists are solely responsible for the delivery and collection of their own works (no refunds either). The works are ensured during the time of the exhibition (but not during the construction- and the deconstruction-phase). They may be send to us by post or delivery. The artists accepted will be notifi ed about further details concerning the exhibition and the dates for delivery and collection of the pieces. Meet!2014Aplicationform.pdf Meet!2014Aplicationform-jan.pdf Copyright (c) Meet! 2014 All Right Reserved
https://w.atwiki.jp/giselle/pages/42.html
NASA関連略語集に戻る PA Pallet Assembly PA Pressurized Adapter (FGB)与圧アダプター PADLES Passive Dosimeter for Life science Experiments in Space パドレス PAL Planning and Authorization Letter PAL Lamp Protuberance Airload Lamp 外部燃料タンク(ET)突起部の空力負荷ランプ PAM Payload Attach Mechanism 船外実験装置取付け機構 P S Pointing and Support PAO Public Affair Office 広報(広報イベント) PAO Public Affair Officer 広報担当オフィサー PAS Payload Attach System ペイロード取付システム PAYLOAD BAY Payload Bay スペースシャトルのペイロードベイ(貨物室) PBA Portable Breathing Apparatus (ISS 内の)非常用酸素マスク PBM Payload Bay Mechanical PC Personal Computer PCA Pressure Control Assembly 与圧制御装置 PCAM Protein Crystallization Apparatus for Microgravity PCAS Passive Common Attach System PCBM Passive Common Berthing Mechanism パッシブ側共通結合機構(CBM) PCC Power Converter Controller PCDF Protein Crystallization Diagnostics Facility PCE Proximity Communication Equipment (ATV との)近接通信機器 PCG‐STES Protein Crystal Growth‐Single Thermal Enclosure System P/L Payload PCM Pulse‐Code Modulation PCMCIA Personal Computer Memory Card International Adapter PCN Page Change Notice P‐Code Precision Code PCP Pressure Control Panel 与圧コントロールパネル PCR Payload Changeout Room (KSC LC-39)ペイロード交換室 PCR Portable Computer Receptacle PCRF Protein Crystallization Research Facility 蛋白質結晶生成装置 PCS Portable Computer System ラップトップコンピュータ PCT Post‐Contact Thrusting P3/P4 Port 3/Port 4 P/TV Photo/Television PCU Plasma Contactor Unit プラズマ接触装置 PCU Power Conditioning Unit PCU Power Control Unit PCVP Pump and Control Valve Package PDA Payload Disconnect Assembly PDB Power Distribution Box 分電箱 PDGF Power and Data Grapple Fixture 電力・通信インタフェース付グラプル・フィクスチャ PDH Payload Data Handling unit PDI Payload Data Interface PDI Payload Data Interleaver PDIP Payload Data Interface Panel PDL Product Development Laboratory PDR Preliminary Design Review 基本設計審査 PDRS Payload Deployment and Retrieval System ペイロード放出、回収システム PDTA Power Data Transfer Assembly PDU Power Distribution Unit 分電盤 PDU Power Drive Unit PE Protective Enclosure PEC Passive Experiment Container PEHG Payload Ethernet Hub Gateway PEP Portable Emergency Provisions 携帯用救急備品 PERS Payload Equipment Restraint System PEV Pressure Equalization Valve 均圧弁 PF Payload Forward PFCS Pump Flow Control Subassembly ポンプ制御システム PFE Portable Fire Extinguisher (ISS 内の)消火器 PFMC Pump/Fan Motor Controller PFR Portable Foot Restraint ポータブル・フット・レストレイント(携帯用の足の固定具?) PFRAM Passive Flight Releasable Attachment Mechanism 取外し可能型取付け機構(受動側) PGBA‐S Plant Generic Bioprocessing Apparatus‐Stowage PGSC Portable General Support Computer ラップトップ・コンピュータ PGT Pistol Grip Tool ピストル型パワー・ツール PHA Prebreathe Hose Assembly プリブリーズ用の酸素マスク PHALCON Power, Heating, Articulation, Lighting, and Control Officer PI Payload Interrogator PI Principal Investigator 代表研究者 PIB Power Interface Box PIC Pyrotechnic Initiation Controller PiP push in pull ピップ(ピン) PIU Payload Interface Unit 船外実験装置側装置交換機構 PJPAM Pre‐stored Joint Position Autosequence Mode P/L Payload ペイロード PLAM Plasma Monitor プラズマ計測装置(SEDA-AP 機器) PLB Payload Bay PLBD Payload Bay Door PLC Pressurized Logistics Carrier PL FCT Payload Flight Control Team PL MDM Payload MDM ペイロードMDM PLSS Primary Life Support System (EMU の)主生命維持システム PLT Payload Laptop Terminal PLT Pilot パイロット PM Pressurized Module 「きぼう」の船内実験室 PM Pump Module ポンプモジュール PMA Pressurized Mating Adapter 与圧結合アダプター PMA Pump Module Assembly ポンプモジュールアセンブリ PMC Private Medical Conference プライベート医学交信 PMCU Power Management Control Unit 電力管理制御ユニット PMDIS Perceptual Motor Deficits In Space PMM Permanent Multipurpose Module 恒久結合型多目的モジュール PMMT Pre-launch Mission Management Team 打上げ前MMT PMP Payload Mounting Panel PMU Pressurized Mating Adapter POA Payload/ORU Accommodation ペイロード/軌道上交換ユニット仮置場 POC Portable Onboard Computer POCC Payload Operations Control Center ペイロード運用センター POH Pulse Output High POIC Payload Operations Integration Center ペイロード運用統合センター POR Point of Reference (RMS 操作時の)原点 POST Power ON Self‐Test PP Planning Period PPA Pump Package Assembly PPAM Pre‐stored POR Autosequence Mode PPCU Port Power Conditioning Unit ppO2 partial pressure of oxygen PPR Positive Pressure Relief 正圧リリーフ PPRV Positive Pressure Relief Valve 正圧リリーフバルブ PPT Precipitate PRB Preload Release Bracket PRCS Primary Reaction Control System PRD Payload Retention Device PREX Procedure Executor PRJ Pitch Roll Joint (SSRMS)ピッチ/ロール関節 PRLA Payload Retention Latch Assembly ペイロード保持固定装置 PRO Payload Rack Officer PROM Programmable Read‐Only Memory PROX Proximity Communication System 近傍域通信システム Prox‐Ops Proximity Operations PRT Power Ratchet Tool 電動ラチェットツール PRT Problem Resolution Team 問題解決チーム PS Payload Specialist ペイロード・スペシャリスト PSA Power Supply Assembly 電力供給アセンブリ PSA POA Support Assembly (MBS) psi Pounds per square inch(圧力単位) psia Pounds per Square Inch Absolute PSN Power Source Node PSP Payload Signal Processor PSRR Pressurized Section Resupply Rack PTB Payload Training Buffer PTCS Passive Thermal Control System 受動的熱制御システム PTR Port Thermal Radiator PTU Pan/Tilt Unit (カメラの)雲台 PTU Power Transfer Unit (シャトルのSSPTS用電力供給装置) PV Photovoltaic 太陽電池 PVA Photovoltaic Array 太陽電池アレイ PVAA Photovoltaic Array Assembly 太陽電池アレイアセンブリ(太陽電池パドル機構) PVCA Photovoltaic Controller Application PVCE Photovoltaic Controller Element PVCU Photovoltaic Controller Unit 太陽電池コントロールユニット PVGF Power Video Grapple Fixture 電力・ビデオインタフェース付グラプル・フィクスチャ PVM Photovoltaic Module 太陽電池モジュール PVR Photovoltaic Radiator 太陽電池ラジエータ PVRGF Photovoltaic Radiator Grapple Fixture 太陽電池ラジエータ用GF PVTCS Photovoltaic Thermal Control System 太陽電池熱制御システム PWD Portable Water Distributor 水供給装置 PWP Portable Work Platform PWR Portable Water Reservoir PWR Power パワー PYR Pitch Yaw Roll ピッチ(機首の上下)、ヨー(機首を左右に振る動き)、ロール(機体を左右に傾ける動き) NASA関連略語集に戻る
https://w.atwiki.jp/voice2012/pages/293.html
Thank you for your message We are very sorry to hear that the item was not playable. Please understand that all of our items are second hand. They have some wears and scratches, moreover we do not guarantee playback operation. However we might have overlooked when listed. Please forgive us for this matter. We would like to make two options for you to select. 1) Send back the items for full refund with shipping cost. However refund will be made after we received back the item safely. 2) Receive partial refund of the item price only and keep the item. We will await for your reply. マニュアル: 【送料の返金に関して(追加送料返金)】 【返金方法】
https://w.atwiki.jp/nicoratch/pages/919.html
概要 ハンピン製"Super OEM"タンテの先駆けとなったモデル。33/45/78回転可能、±10%(Pro TT-1+から20%)のピッチ・コントロール搭載。またピッチが表示されるLCDディスプレイが搭載された初のタンテ。しかし不正確であまり役に立たないらしい。 Pro TT-1 Pro TT-1+ ※画像なし Pro TT-1+(クローム仕上げの限定版) +スペック表・TT-1 Features feature ± 10% pitch adjustment feature Start/Stop Button feature 33/45/78 RPM speeds feature Forward and Reverse Platter Direction feature Unique Top Plate LCD Display feature Pitch Change Percentage feature Platter Speed feature Quartz Lock Mode feature Rotating 12 segment circular display indicating the spinning actions of the platter at all times feature Pop-up Stylus Target Light feature Quartz Lock of 0% speed position feature 45RPM adapter and holder feature S-Shaped Tone arm assembly with feature Counterweight feature Height Adjustment feature Skating Adjustment feature Height Lock feature Lever lift with height adjustment feature Tone arm holder with locking mechanism feature Output for feature External START/STOP control feature Easily removable smoked plastic lid feature Extra Stylus Holder Specifications feature Type 3-speed, full manual feature Driving method Direct drive feature Motor 12 Pole, 3 Phase, Brushless DC Motor feature Turntable platter Aluminum diecast 330mm dia. feature Starting Torque more than 2.2kgf.cm feature Braking Electronic feature Wow and flutter 0.13% feature S/N ratio 50dB (DIN-B) feature Output Difference 2.3dB feature Channel Separation 16dB feature Power consumption 15 Watts feature Dimension (W x D x H) 450 x 352 x 148.5 mm feature Weight 10,8kg 価格 499ドル(PRO TT-1 / PRO TT-1 +) PRO TT-1(取扱説明書・英語・PDF) https //www.numark.com/images/product_downloads/prott_1_referencemanual_00.pdf Pro TT-2 Pro TT-2(クローム仕上げの限定版。ストロボライトが青色LED仕様もある) Pro TT-2 MX edition(ブラック仕上げの限定版。希少らしい) +スペック表・TT-2 Features feature ± 20% pitch adjustment feature Start/Stop Button feature 33/45/78 RPM speeds feature Forward and Reverse Platter Direction feature Unique Top Plate LCD Display feature Pitch Change Percentage feature Platter Speed feature Quartz Lock Mode feature Rotating 12 segment circular display indicating the spinning actions of the platter at all times feature Pop-up Stylus Target Light feature Quartz Lock of 0% speed position feature 45RPM adapter and holder feature S-Shaped Tone arm assembly with feature Counterweight feature Height Adjustment feature Skating Adjustment feature Height Lock feature Lever lift with height adjustment feature Tone arm holder with locking mechanism feature Output for feature External START/STOP control feature Easily removable smoked plastic lid feature Extra Stylus Holder Specifications feature Type 3-speed, full manual feature Driving method Direct drive feature Motor 12 Pole, 3 Phase, Brushless DC Motor feature Turntable platter Aluminum diecast 330mm dia. feature Starting Torque more than 2.2kgf.cm feature Braking Electronic feature Wow and flutter 0.13% feature S/N ratio 50dB (DIN-B) feature Output Difference 2.3dB feature Channel Separation 16dB feature Power consumption 15 Watts feature Dimension (W x D x H) 450 x 352 x 148.5 mm feature Weight 10,8kg 価格 599ドル(PRO TT-2)
https://w.atwiki.jp/jasagiri/pages/45.html
第5章 RSRuby の拡張 例 ほとんどの簡単なアプリケーションでは基本の変換モードで十分ですが、 R オブジェクトを使うなら基本タイプを超えていけます。 PROC_CONVERSION and CLASS_CONVERSION モードではじめるのに必要でしょう。カスタム Ruby クラスと連携してほんとに強力なシステムを作ることが出来ます。 5.0.1 Enhanced RObj RPy マニュアルのデモと同様な RObj クラスの拡張例を示します。 R オブジェクトを探す属性は method_missing を使うよう置き換えています。また、R によって出力された文字列を置換するメソッドのデモも示します。 This code is included in the RSRuby distribution and can be activated by require-ing rsruby/erobj and setting the proc table appropriately as shown class ERObj @@x = 1 def initialize(robj) @robj = robj @r = RSRuby.instance end The ERObj initialization method simply stores the wrapped RObj and the RSRuby interpreter. def as_r @robj.as_r end def lcall(args) @robj.lcall(args) end The as_r and lcall methods simply delegate to the same methods in the wrapped underlying RObj. def to_s @@x += 1 mode = RSRuby.get_default_mode RSRuby.set_default_mode(RSRuby NO_CONVERSION) a = @r.textConnection( tmpobj#{@@x} ,’w’) RSRuby.set_default_mode(RSRuby BASIC_CONVERSION) @r.sink( file = a, type = ’output’) @r.print_(@robj) @r.sink.call() @r.close_connection(a) str = @r[ tmpobj#{@@x} ].join( \n ) RSRuby.set_default_mode(mode) return str end The to_s method makes the R interpreter print to the tmpobj variable using the textConnection and sink functions. This is then retrieved and returned as the string representation of the object for Ruby. def method_missing(attr) mode = RSRuby.get_default_mode RSRuby.set_default_mode(RSRuby BASIC_CONVERSION) e = @r[’\$’].call(@robj,attr.to_s) RSRuby.set_default_mode(mode) return e end end The method missing function returns the attribute with the same name as the missing method from the wrapped RObj. To use the ERObj class we can set the proc table to return a new ERObj with every conversion. irb r = RSRuby.instance = # RSRuby 0xb7baf320 irb r.proc_table[lambda{|x| true}] = lambda{|x| ERObj.new(x)} = # Proc 0xb7ba68ec@(irb) 2 irb RSRuby.set_default_mode(RSRuby PROC_CONVERSION) = 4 To test the returned class we use the R t.test function, which returns an R list. Note the string representation of the returned object which matches the string form given by R. irb e = r.t_test([1,2,3,4,5,6]) = # ERObj 0xb7b9d918 irb puts e One Sample t-test data c(1, 2, 3, 4, 5, 6) t = 4.5826, df = 5, p-value = 0.005934 alternative hypothesis true mean is not equal to 0 95 percent confidence interval 1.536686 5.463314 sample estimates mean of x 3.5 = nil irb e.statistic[’t’] = 4.58257569495584 5.0.2 ArrayFields The default conversion mode converts R lists into Ruby Hashes. This changes the seman- tics of the returned object because R lists retain order information while Ruby Hashes are unordered. To fix this we can plug a new method in to return Arrays extended by the ArrayFields gem require ’rubygems’ require_gem ’arrayfields’ require ’rsruby’ test_proc = lambda{|x| !(RSRuby.instance.attr(x,’names’).nil?)} This Proc tests the given object to see if the names attribute is set. If so, the following Proc is used to convert the object. conv_proc = lambda{|x| hash = x.to_ruby array = [] array.fields = RSRuby.instance.attr(x,’names’) RSRuby.instance.attr(x,’names’).each{|f| array[f] = hash[f]} return array } We then setup the proc table with these procs and test using the R t.test function. r = RSRuby.instance r.t_test.autoconvert(RSRuby PROC_CONVERSION) r.proc_table[test_proc] = conv_proc r.t_test([1,2,3]).each_pair{|f,v| puts #{f} - #{v} } Note that the point here is that the list returned by t.test is converted to an Array (with the Arrayfields extensions), which retains order information unlike the Hash it would be converted to otherwise. 5.0.3 DataFrames DataFrames は R プログラミングでは有用なオブジェクトです。
https://w.atwiki.jp/wangjunyu/pages/26.html
Organic fibers will presume a important section while in the producing green financial system in light of electricity performance, the utilization of renewable motivate stocks in polymer items, present day processes that lessen carbon discharges and recyclable resources that restrict waste. All-natural fibres are a sustainable asset, 2nd to none - they may have been revived by nature and human ingenuity for centuries. They are on top of that carbon neutral they ingest an identical measure of carbon dioxide they deliver. Amid processing, they create effectively normal wastes and leave particles that may be utilized to build ability or make environmental housing materials. What s a bao bao bag lot more, toward the finish of their existence cycle, these are 100% biodegradable. Purely natural fibres are effective for you personally and handy for mother nature. Cotton, fleece, silk together with other plant and animal fibres are comfortable to put on. They are a possible asset, because they are sustainable, biodegradable and carbon neutral and they could be used without having exhausting or harming the earth. While in the time you go through this, a massive number of plastic baggage are going to be developed. Also, we have not stated the measure of oil essential. An investigation via the EPA (Environmental Safety Agency) in 2008 shown that issey miyake tote special six.8% of all plastic waste is reused. Be that because it may well, what happens into the next 93.2%? Eighty per cent of floating waste in seas and lakes is included plastic, which structures a noteworthy threat to aquatic life. Lots of turtles combine up plastic packs for jellyfish and take in them. Numerous birds and fish also ingest plastic particles or turn out for being (lethally) trapped in plastic offers. The squander isn t going to obvious itself up it will require close to one,000 yrs for plastic to end up plainly absolutely obviously degraded. Distinct bodies have effectively expressed that plastic baggage ought to generally be limited now. The good thing is, a number of governments now furthermore understand the truth of the difficulty. In China, someplace while in the variety of 3 billion plastic bags or deals had been utilized every single day, and also the waste belts in China were starting up to look like white mountains because of all of the disposed of plastic. In light of this, the Chinese authorities took measures to issey miyake online keep the utilization of plastic components. In addition to China, the administrations of Australia, Bangladesh, Eire, Kenya, Rwanda, South Africa, Taiwan, Uganda and a few city parts inside the U.s. (counting San Francisco) have also taken helpful measures for reducing the utilization of plastic deals or luggage.